Improve caching layer

Previously config() would return a reference to whatever was loaded from
_load_config().  Changes to that structure would result in changes to the
return value of ->config leading to an invalid cache issue.

The dclone ensures that config will persist in returning the value from
_load_config().

Storable has been core since 5.7.3, and a result has not been added to
the Makefile.PL as a requirement.
Removed Test::MockObject as a test dependency.

This was able to be done in native Perl trivially and should
not require adding a dependency to be installed.
Corrected text verbage for password.

Password is the key used in DBI/DBIC for password authentication,
pass has been used incorrectly.  This has been corrected in the
test files.
Allow configuration over-writing from connect()

This allows connect() lines to contain keys to over write the
loaded configuration.  Any specified configuration will be added
to, or replace the loaded configuration.

The dsn itself may not be replaced by default.
Documentation updates
Regenerated the Markdown README from the POD documentation.
Updated Changes with the last few commit's details.
Removed Test::MockObject req from tests.
Instead of a special snowflake _merge, use Hash::Merge
Now with namespace::clean
Linked a Readme.POD for GitHub to the library.
Removed the markdown generated readme.
Updated the documentation to be more clear.
Maybe the link will work this way.
Maybe the link will work this way.
Updated documentation for clarity on connect()
Code ref as the first argument is passed through.
dbh_maker is now passed through.
Updated Changes with current progress.
Adding Storable to Makefile.PL

* Storable wasn't core until 5.7.3, while we support 5.005+