Add support for PostgreSQL range data types

This should definitely be more modular to support other databases, but this is all I got so far.

I also couldn't add any tests because the range data type does not exist in SQLite3 :(

But this is all it took to make it work with Postgres.