Use "close" event to indicate finished comsumption

Fixes a race condition with active uploads and end being called. Also remvoes the complexity of having to subclass end().

Relevant:

* https://github.com/joyent/node/issues/5315
* https://github.com/joyent/node/issues/5336
* https://groups.google.com/forum/#!searchin/nodejs/_write/nodejs/ydWIyPrDVB4/Rt4EZk0YNgcJ
Update tests and readme with "close" event
Add changelog for close event + race condition fix
Merge pull request #20 from Obvious/es-close-event

Use "close" event to indicate fully uploaded data