Allow groups to contain the master shard
Allow default for migration using_group() function

One approach to sharding is to have many databases with
identical schemas, which are not replicas of each other.
In this case always want to run all migrations on all of
the shards without needing to explicitly state this in
your migration files with the `using_group` syntax.

This patch allows you to specify a default_migration_group
setting in your shards.yml, so that all migrations will run
against all shards in the specified group, unless a different
`using_group` call is explicitly made.