### Description

From the nodes stats API, we should extract the `thread_pool` stats into their own endpoint. This endpoint can then be non-node-centric, and present a global view of the number of completed, rejected, and failed operations for each of the threadpools in the system.
server/src/test/java/org/elasticsearch/action/admin/cluster/node/stats/NodeStatsTests.java
++iota,
            ++iota,
            ++iota,
            ++iota,
            ++iota,
            false,
            ++iota,
            ++iota,
            ++iota
        );
        indicesCommonStats.getIndexing().add(new IndexingStats(indexingStats));
        indicesCommonStats.getQueryCache().add(new QueryCacheStats(++iota, ++iota, ++iota, ++iota, ++iota));
        indicesCommonStats.getRequestCache().add(new RequestCacheStats(++iota, ++iota, ++iota, ++iota));
        final SearchStats.Stats searchStats = new SearchStats.Stats(
            ++iota,
            ++iota,
            ++iota,
            ++iota,
            ++iota,
            ++iota,
            ++iota,
            ++iota,
            ++iota,
            ++iota,
            ++iota,
            ++iota
        );
        Map<String, SearchStats.Stats> groupStats = new HashMap<>();
        groupStats.put("group", searchStats);
        indicesCommonStats.getSearch().add(new SearchStats(searchStats, ++iota, groupStats));