Changed migrations specs to require that migration_stub calls exist.

Before, using migration_stub could reference a global model.  The goal
of migration_stub always was to prevent loading global models so that
we can ensure that, at the least, tests enforced that rule.  Now,
migration_stub actually enforces the rule.

This exposed many places where migration_stub was being used incorrectly
or where the migration itself incorrectly referenced global models.  The
fixes, depending on the migration, include
- Add the stub if it's used by the migration itself, and was never there.
- If the stub is not used by the migration, but only for testing, add
  a spec-only `Class.new` style stub.  Most of the `Reserve` specs do
  this, so, a helper method was introduced to DRY it up.
- 2 migration specs used stubs, but upon further review those specs
  weren't testing anything except pure ActiveMigration code, which isn't
  worth doing, so they were removed.