More robust tests of dependency lazy-loading and delay of more req loads

Inspired by the lazy-loading chase in 723f25e0

Skip the test entirely on 5.8 - it is becoming too difficult to predict
extra dependency load order
Cleanup logic of _determine_driver - do not fire unless we have conninfo

Also switch some connection init warnings  s/carp/carp_unique/
deployment_statements() and cursor_class() are storage-dependent

We need some sort of generic test for this, so we stop dropping stuff
on the floor. The logic is something like "if a public method is overriden
in a DBI:: subclass - we need to mark it for resolution". E.g.

rabbit@Thesaurus:~/devel/dbic/dbgit$ grep deployment_statements -r lib/DBIx/Class/Storage/DBI/
lib/DBIx/Class/Storage/DBI/Pg.pm:sub deployment_statements {
lib/DBIx/Class/Storage/DBI/Replicated.pm:    deployment_statements
lib/DBIx/Class/Storage/DBI/mysql.pm:sub deployment_statements {
lib/DBIx/Class/Storage/DBI/SQLite.pm:sub deployment_statements {
lib/DBIx/Class/Storage/DBI/Oracle/Generic.pm:sub deployment_statements {
Fix tests failing due to unspecified resultset retrieval order

An upcoming version of DBD::SQLite bundles an SQLite library
with different behavior wrt retrieval of unordered indexed columns.

Fix all tests that could be affected now or in the future, and
add travis smoking to detect the condition early