Refactor Hiera Server code

Do you have some time to review these changes ?

I believe the code is much clearer. The logging code inside query was producing lot's of noise. So I opt for `hslogger`. At some point I have tried to use the InterpreterMonad but then I realize it does not play any role in Daemon. I think it makes more sense to either use the operational global monad or go for hslogger (yet another third way to do logging seems a bit too much to me ;-)

The other change is about the `querycombinator`. I had to use the lazy normal Maybe type. I have been trying to think about what differences it makes and I cannot really see any benefit in favor of the strict variant (rather the opposite actually).

It compiles, does not seem to perform badly performance wise, tests are green.

Thanks for your feedback.