Replace allow_octopus with more specific allow_shard

This means that models using octopus_establish_connection
can allow specific shards to be used given an explicit
`using` call, but will continue to ignore attempts to use other shards
(presumably, shards on which this model cannot be found).