Add ShardSpec Lookup

Optimize choosing shardSpec for Hash Partitions
that will put an extra restriction on the list to be ordered by the partitionNum, 
shall I sort the list inside this method on partitionNum ?