Description
This method will create the datasource driver object by attempting to detect
it's type. If the type can be found the driver will be instantiated and
returned, if it cannot be detected, an error will be returned.
When using bundled data drivers, the bind() method is the preferred approach,
this method exists for those who wish to create their own data source driver.
If you do create your own driver and find that it may be useful to others,
please post it to the mailing list so that it could be bundled into the package.