Classes inherited from it implement communication with database systems.
See [SQLite3Database] for an example.
Currently only an sqlite backend is available, however communication with other systems (like MySQL, or PostgreSQL) can be implemented without too much hassle using engine modules.
Returns a [DatabaseConnection] object which can be used to run queries on the database.
Always get a new one, don't store it, as the database backend might give different ones depending on certain factors (like calling threads) for faster operation.