Cool, thanks.
For reference, for my 3-shard system, I've used something in the line of:
mongos> db.getSiblingDB("config").shards.save( {_id: "shard0001", host: "
shard0001.example.com" } )
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
mongos> db.getSiblingDB("config").shards.save( {_id: "shard0002", host: "
shard0002.example.com" } )
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
mongos> db.getSiblingDB("config").shards.save( {_id: "shard0003", host: "
shard0003.example.com" } )
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })