Wip sharded threadpool

This is a pull request for sharded thread-pool.
If you don't want Sharded thread pool to know about the number of Shards(that's what You & Greg's intent I gues), what I can do in the constructor of sharded thread pool, I can do the following.

op_sharded_tp(cct, "OSD::op_sharded_tp", cct->_conf->osd_op_num_threads_per_shard * cct->_conf->osd_op_num_shards)

Is this okay with you ?