More injections and simple query objects

* ISiteMap is not part of the injection process
* Moved all database queries to distinct query objects