Merge pull request #3 from dhuang/master

Various style changes and adjustments

* Moved options/manage_cmd variables to MigrationList class, as they are the same for all Migrations
* Don't bother calling post_checkout() if old/new branch are the same or it's a file checkout
* Remaining changes should just be minor style changes
* Default use --merge, add a --no-merge option. Added to tests to cover the feature branch to feature branch case. I think it's safe to have --merge by default to avoid the conflict errors.