The Shard concept in mongos is effectively only necessary for targeting and for shard connection management (even though today we have a lot of other functionality in there).
It would be best if it is moved under the s/client library and stripped of that extra functionality.