Migrations have been improved to be much lower level.

Migrations are now database-specific although some attempt has been made to
have them be more easily portable.