:zap: Refactor database layer

* MySQL and StaticMySQL have been renamed to DatabaseConnection and
StaticDatabaseConnection.
* DatabaseConnection is now PDO based. Usage of mysql is hard coded at
the moment but now it should be easier to implement other databases.
* Almost 100% UnitTest coverage