Working out how to handle other data providers.

Also switched Rhino ETL to take IConnection.