Refactored the configuration of sessions

The configuration now makes sessions a first-class citizen instead of being centered around drivers. This allows defining several session based on the same driver type.
Instead of allowing other extensions to register their own sessions to add new drivers, they can now register a DriverFactory in the MinkExtension during the extension initialization to make a new driver type available.

Closes #119