Refactor email activity creation, add parameter, add basic phpunit tests
This builds on (and replaces) !17 (comment 51978)
It creates the activity as Cancelled, but then updates it to Completed after a successful send, so you know whether it was successfully sent.
It adds a
create_activity param to the API, defaults to
1 to keep backwards compatibility but can be set to
0 to suppress creating an activity.
And FTW, we now have some TESTS!!