Error handling - use Error objects
hook - use RSVP.EventTarget.mixin
error handling - remove unnecessary API.
EIDB - use hook as EventTarget