Selective isolation

I think hardcoding URLs inside hooks is worse than using a decorator. I didn't find this all that hard to debug and I've seen instances of the request object losing attributes I'd assigned to it while a request was still in progress.

I've tested this implementation and not found problems with it. I would be quite resistant to changing it fundamentally.