Move beforeNotify to be just before requests are sent, add tests for modifying payload

I'm 99% sure this is backwards compatible with the old `beforeNotify` technique, but would love a review @ConradIrwin