Add --ignore-errors option to migrations:execute

If a migration fails with an error part way through, even if you fix
the error in the migration code, you usually cannot reapply the
migration because it will fail trying to redo the original commands that
succeeded.

If you try to roll back, that will fail on any commands that undo things
that weren't successfully done the first time.

This adds an --ignore-errors option to the migrations:execute command
that will run all the commands in the migration, even after earlier
commands cause errors. It is not recommended to use this option unless
you fully understand it's implications, but it can save a lot of time
fixing a broken database migration.