Fixed shard-list refactoring.  All tests pass.
Moved shards from a connection property to a method on send_query.  This is needed
to allow context objects to restrict which shards they query whilst sharing a single
connection object.
A new problem with shard constraining has been found.  This branch is now unstable again.

We want to limit FileSearchContext queries to just the shard where the  records are stored.  However,
there are small differences between the format of shards and the SOLr property 'index_node'.  Inteligent
limiting of shards by hostname is needed.