Forgot to make these more exact matches
Fixed to properly handle empty json response, which is normal for certain
API methods.
Fixed delete() so errors are properly captured, and 404s show a special
error message to help users.
Added mute_all() and test. Removed #TODO note in retrieve() and implemented
code to use all existing data in alert changes, for anything not provided
by caller.