Use wisper to subscribe to receiver

Instead of the clunky `:handler` option.
This is backwards compatible, and is groundwork for dirty map and precaching management.
I agree, but unfortunately I can't find a way to expect the call to `#warn` in the initializer — given the instance doesn't exist yet. I'll take suggestions of course.