test pg, we don't care about the internal state of `column#default`.

That data is internal to Active Record. What we care about is that
new records have the right default value.
test pg, move bit string type tests into `bit_string_test.rb`.
Refactor determination of whether the field has changed

The types know more about what is going on than the dirty module. Let's
ask them!
pg, preserve type when schema dumping bit and bit varying columns.
Merge pull request #15442 from sgrif/sg-refactor-field-changed

Refactor determination of whether the field has changed
Return a null column when no column exists for an attribute