Add PGRange class.

Addresses #14010.

Adding a new class `PGRange` that PostgreSQL Ranges will map to instead of Ruby Ranges. The new PGRange class addresses the shortcomings when attempting to directly translate the Postgres Range to Ruby Range. Namely, Ruby ranges do not support unbound beginnings and ends, nor do they support exclusive beginnings.