Update changelog
Test that "source" name is passed to custom target handlers
Add a short-lived cache for storing processed request bodies

resolves #23
Store decoded json body in cache rather than an attribute

No need to parse JSON body on every call to parse
Removes temporary data on each parse
Make _parse_json_body a function rather than a method
Update changelog
Merge branch 'feat/cache' into dev