AspectProxy updates

Adds functionality that improves the aspect oriented capabilities for the framework. Have swapped the DB over to using the injector for creating the database class, so that it can be overwritten - see the gist at https://gist.github.com/nyeholt/7800594 for how an aspect can be bound in place to be able to perform query splitting between a write 'master' database, and a read-only cluster of slave databases that are replicated from the master DB.