Use undef instead of '%' fore the table and type arguments to $dbh->tables

Neither the DBI documentation nor the ODBC specification allow '%' for
the type, but some DBDs do (or did, DBD::Pg 3.4.0 no longer does)
allow it. For the ones that didn't, the loader subclass used override
->_tables_list to pass undef explicitly.

Instead, use undef in the default implementation, but allow subclasses
to override as needed (none currently do).

Also change the table argument to default to undef, since that's
equivalent according to the spec and all the DBDs I've tested with or
looked at (SQLite, MySQL, Pg, Oracle, FireBird, ODBC, InterBase).