Fix for ActiveRecord ~> 4.2 compatibility

Arel 6.0.0 introduced new methods for handling literals in SQL
(strings, array, etc) and also seperated Visitors into two types,
ones that map and ones that reduce. This fixes postgres_ext to
hook into the Arel PostgreSQL visitor in a way that's compatible with
the new reducing visitor calling style. This also makes sure literal
arguments to Arel Nodes are wrapped in the new Quoted object.

Finally this patch also adjusts test due to some quoting and spacing
changes in the SQL strings Arel outputs.
Fix AR 4.2 support changes to be backwards compatible

This patch conditionally includes files to support using either
ActiveRecord 4.2 or older versions. When including Arel monkeypatches
it loads files based on the detected ActiveRecord version.

It also renames and combines the old visitor version to patch the
Arel PostgreSQL visitor instead of the base visitor class.

Finally it changes some tests to use Regexes that will match the
SQL produced by all supported versions of ActiveRecord.

An additional note: The version check in lib/postgres_ext/arel.rb will
need to be updated when the final version of ActiveRecord 4.2 is
released.