Allow option of strict or not-strict typing on queries

Add the option of requiring the table and column's datatypes to match;
throws an exception if they don't If this option is turned on, it
improves performance, but it's less safe. When this is off, you can have
a varchar(10) column type and a corresponding int property type. (As
long as the actual values in the varchar(10) column are pareseable as
ints.)