SQLText parser error handling

• Parser throws ParseException (which reports error position)
• Added wrapper method parseSQL to Connection to translate ParseExceptions into SQLExceptions
Fix bugs in numeric encoder

• Correctly writes the length value
• Writes the # of digits as required
Fix ResultSet.setObject (with targetSQLType)

• Was previously attempting to alter the sent parameter type; which does not work
• Currently just ensures the targetSQLType is compatible with the parameter's type
SQLText error handling

• Throw specific errors for mismatched parens and braces
Array handling support

• Support multi-dimensional arrays in encoder and decoder
• Array result sets now comply with standard
• Returns null when getArray is called and value is null
• SQL meta-data now returns ARRAY for array types
Use "Unknown" for PrimitveType instead of null
Simplify Records decoder
Fix bug in Array decoder

• Correctly decodes "empty" arrays
Map SQL types to common aliases

• Fixes bug in setObject when using BIT vs BOOLEAN, CHAR vs VARCHAR, etc