Fix Queue class
Add Queue.afterEnqueue event

This event allows developers to build tooling on top of queuesadilla for stuff like:

- Monitoring success/failure of job enqueuing
- Log different types of items

Note: This is not 1-to-1 compatible with Resque's afterEnqueue callback, as it uses a different method of dispatching the event, and also provides a different, much more rich set of data about the push
Ensure we populate lastJobId for RedisEngine
Only set the item['id'] when a job push is successful