Fix JSON serialization of TimeWithTimeZone and TimestampWithTimeZone

Add test to verify serialization
Prefix date time type classes with Sql
Replace use of java.sql date time classes with custom classes

Add custom classes for all sql date time types.  This makes it easier to control
the things like serialization.  Additionally, java.sql types loose information
like session time zone.
Add support for time* with timezone in JDBC
Fix JSON serialization of interval types
Add support for interval types to JDBC driver