Currently the IDatabase interface deals with all possible database interaction.
The interface currently has ~130 methods, with new ones appearing every week or so.
Many bits of code that use our database classes really don't care about 90% of these methods.
Could we put some thought into potentially splitting the interface?