Add AbstractDriver type to $driver argument on constructor

Prevents fatal errors if $driver is not an object that implements AbstractDriver.