No implicit casting of placeholders on PostgreSQL

These was only needed for old versions of PostgreSQL that Sequel
no longer supports.  On the off chance that there is still a need
to specify a type, a specific cast can be used via Sequel.cast.
Remove validates_not_string

This validation has a couple of major flaws.  The major flaw is
that input can come in as forms other than a string, and you still
should check those cases.  The minor flaw is it doesn't handle
string or blob columns.  The new validates_schema_type validation
is a much better approach to dealing with typecast errors.
:eager_loader and :eager_grapher always receive hash

For backwards compatibility, these options where passed three
separate arguments instead of a hash if their arity was not 1.
Array and hash invalid for string column setters

Sequel uses strict typecasting for most column types.  However,
since virtually all ruby types are convertable to strings, Sequel
has historically been loose in this area.  It's common to implement
filtering of input to setter methods for just strings, ignoring
other types.  In most web applications, input to the column
setters which is expected to be a string can be in the form of an
array or hash, which would skip such input filters.  This is
especially bad on ruby 1.8 where ["bad"].to_s == "bad", allowing
bypassing of the filters in a fairly silent manner.

Considering that Hash#to_s and Array#to_s differ between ruby 1.8
and 1.9+, it's unlikely anyone is relying on this behavior.

The looser_typecasting extension will be modified to support the
historical behavior.