Revert the table_exists? optimization

This optimization can result in wrong results:

  DB.create_table(:foo){primary_key :id}
  DB.schema(:foo)
  DB.drop_table(Sequel.lit('foo'))
  DB.table_exists?(:foo)
Make count with arguments or block do a query in the static_cache plugin
Recommend using the pg_typecast_on_load plugin in related pg_* extensions
Don't fail for missing conversion proc in pg_typecast_on_load plugin
Add schema_type_class support to the pg_* type extensions
Make sure Database#schema_column_type is private

A few places accidently overrode it and made it public.
Make pg_row plugin support schema_type_class

While here, handle another issue when using the pg_row plugin
with an aliased table.