Update ZM_HookEvent and ZM_UnhookEvent.

* Module must always be specified. These are helper functions that owner modules may use, but the caller will be various modules.
* Updated error conditions.