timeout event, and timeout option implemented. added docs & example
refactored code into _fireCancelTimeout, which is now also called when an error is emitted.
Merge pull request #130 from bosky101/timeout

timeout event, and timeout option implemented. added docs & example