Add a DAO testing framework

* Allows injecting DAOs using a new `@Dao` annotation
* Allows applying datasets before running tests using DbUnit and a new `@DataSet` annotation
This is probably wrong, actually. Since everything is one module, if you want HSQL available as a runtime database this should probably be removed.