Alternate table-per-table PostgreSQL backend ("postgrest").

This creates one appname_namespace_table table per kvlayer table, and
creates one typed SQL column per kvlayer key field.  The theory is that
this helps scalability for very large tables and gives the database a little
more room to try to optimize things.  The test_throughput test reports
comparable performance to "postgres" (on a (uuid.UUID,) keyed table).

In contrast, the "postgres" backend creates one kv_namespace table, with
one column each for the kvlayer table name and the packed string kvlayer
key, so everything winds up in one table and the key is opaque to the
database.