with a custom IDatabaseFactory (mostly for testing).
Changes AuditTrail to internal so the public way is just with the 'Audit' class.
Fixed ThreadSafetyServiceTests which was failing with the new AuditTrail stuff because of the
Database instances, this is not solved with the new PerThreadDatabaseFactory for the unit test.
Created new 'UmbracoDatabase' object which inherits from the PetaPoco one so that we can future proof
the implementation as we might want some custom logic on there. Now the IDatabaseFactory returns
an UmbracoDatabase instead of just Database.
Adding extension method to ApplicationContext to attach the two contexts here instead.
Refactoring BaseWhereClause as there were problems formatting the sql.
Adding unit tests for MacroRepository and ContentRepository.
Adding DatabaseContext hooked up to UmbracoContext and initialized through the CoreBootManager.
Adding constant for ConnectionString name in GlobalSettings.