more general MonadReader superclass, so every `Url x m` can `ask` for the host. Should I keep it? This means that non-absoluteurl monads can have `ask` implemented... are they dummy instances? !!