Store versions in each shard's schema_migrations table

Currently schema version information for all of the shards in an
application is stored in the master shard only. This information
should be stored in each shard individually, and each shard
should execute the migrations necessary to bring it to requested
version.

In the event that the schemas of two shards diverge, this
change ensures that the divergence is properly recorded and that
running `db:migrate` task will correctly migrate the shards to the
same version.

This is a backwards-incompatible change. Included is a rake task
(`octopus:copy_schema_versions`) that assumes that all shards are
at the schema version recorded in the master database. Applications
running a previous version of octopus must run this task on update
to avoid rerunning previously applied migrations.
Add post-install message about schema version rake task
Rails 2.3 compatibility
Merge pull request #143 from ragalie/migrations

Store versions in each shard's schema_migrations table