Convert to an opaque URI starting with "db:".

Formally, a database URI is a URI that starts with "db:" followed by
an URL starting with the database engine name. Otherwise functionality
is largely the same as before.

I've also added some more docs, support for "db:engine:dbname"-style URIs, and
the C<engine> method. I also fixed the C<db_name> method to return the proper
value regardless of format.