Add hooks for API actions create, update, and delete

I think saveViaAPI can cover both create and update actions, since the desired action can be discerned from the presence of an id.

The actual logic for communicating with the API can be added in child classes.