Add --sha-map option

This allows you to override which git SHA a specific migration is run
against by providing a JSON hash string, where the keys are the
migration IDs, and the values are the SHAs. For example:

    {"20131114092643": "4d8b21f"}
Improve handling of bundler
Add --prepare and --cleanup options

These options allow running custom scripts to prepare and cleanup before
and after each migration.

The prepare script runs right after the Rails app has been reset to the
migration's SHA, meaning before any bundler commands, and migration
commands run. This allows for patching of the Gemfile even if needed.

Within both scripts two environment variables are made available:

- `APP_PATH`: Full path to the Rails app that's being migratated.
- `MIGRATION_FILE`: Full path to the specific migration file that's
  about to run for the prepare script, and has run for the cleanup
  script.
Bump version to 0.2.0