Fix migrations with enable_extension

When using ActiveRecord::Base.table_name_prefix and/or
table_name_suffix, extension names got the same treatment as table names
when running migrations. This led to migrations that tried to call, for
example, enable_extension("prefix_hstore") on the connection.
Default config.assets.digests to true in development
Merge pull request #10798 from jcxplorer/fix-enable_extension-with-table_name_prefix

Fix migrations that use enable_extension with table_name_prefix/suffix

Conflicts:
	activerecord/CHANGELOG.md
	activerecord/lib/active_record/migration.rb
Fixing test order issues
Merge pull request #15155 from dskang/digest

Default config.assets.digests to true in development
Remove :timestamp column type

The `:timestamp` type for columns is unused. All database adapters treat
them as the same database type. All code in `ActiveRecord` which changes
its behavior based on the column's type acts the same in both cases.
However, when the type is passed to code that checks for the `:datetime`
type, but not `:timestamp` (such as XML serialization), the result is
unexpected behavior.

Existing schema definitions will continue to work, and the `timestamp`
type is transparently aliased to `datetime`.
Merge pull request #15184 from sgrif/sg-remove-timestamp-type

Remove :timestamp column type
Delegate type casting to cast type