Remove databases created from Driver, and use a singleton to store it

When we use the Driver, a Databases object is created into the driver class.

I think the driver is mostly use to  connect a remote server, so we should instanciate the database as needed for instance in a singleton