Added promises: with generators, error handling, parallel & sequencing