add support for detecting based on dsn

Note that this is VERY MUCH not the intended final API.  I suspect we can either
look at whether or not the value being detected ->isa('DBI::dbh') or maybe even
merely ref $value.