Use Service architecture to standardize handlers

Handlers and validators now have pointers back to everything to prevent
a lot of unnecessary getters and setters and generics.