Allow changing the schema for Postgres.

This primarily just makes it so that the migrations table is per schema rather than always being in public. Migrations still need to explicitly use the schema in the DDL/DML, eg:

CREATE TABLE my_schema.my_table (...)

I was a little iffy on the test. I wasn't sure how you were specifying username/password, so the test might need to be fixed.