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
Not necessary. I was experimenting with trying to have something like an anonymous bean, but it appears that's impossible with Java configuration. I'm glad $dayjob doesn't use this approach. I'm not a fan.