Correctly dump `:bigserial` primary keys on PG

Opted for polymorphism on the connection adapter, rather than the type
objects, as putting it there would require adding methods to all types
that ultimately only affects a small number of types and only on
PostgreSQL. I've got some ideas for separating schema concerns into
another object, this will be refactored onto those once I flesh that
out.

Fixes #15968.
I believe there's also an issue a couple lines below this excerpt where it has `next if column.name == pk`. This needs to be something like:

```Ruby
next if (column.name == pk && column.sql_type != 'integer')
```
so that non-integer columns are created.