DoOn Tweaks

- do not have 2 method overloads with similar method signatures, dynamic languages can not negotiate method dispatch using function arity
- add doOnCompleted and doOnError methods instead of different doOnEach overloads

This is a very slight breaking change by deleting a method added in the last release. I did not catch this when I did the code review.