Initial precheck feature implementation
Merge branch '2.0' into feature/precheck
Merge branch 'feature/precheck' into 2x
Merge remote-tracking branch 'origin/develop' into 2.0

Conflicts:
	Console/Command/MigrationShell.php
	Lib/CakeMigration.php
fix failed tests
Merge branch '2x' into feature/precheck
Update readme.md
Reverting the messed up reset feature in the case a migration breaks
Fixing the return of MigrationVersion::run()
Merge branch 'feature-precheck' of github.com:CakeDC/migrations into merge-precheck

Conflicts:
	Lib/CakeMigration.php
fix tests in Model/CakeMigrationTest to assert MigrationException is thrown when needed
Making sure precheck is set in the console
Merge branch 'merge-precheck' of github.com:CakeDC/migrations into merge-precheck
Fixing tests, coding standards and doc blocks
Correcting some code formatting
Improve precheck integration with CakeMigration. Implements tests for PrecheckCondition class.
Update documentation about checking modes.
Fix failed test case
Minor changes to the readme.md part that is about the pre-checks
Making the pre-check the default behavior for the shell