The code was erasing (actually: moving the caret back for) too many characters
because the number of characters to move back was being overwritten
too early.
The bug manifests itself only in Windows Command Prompt via npm script
and only when webpack is run in conjunction with other npm scripts. Linux
terminal is also affected, but apparently is more graceful (doesn't allow the
backspace character to jump to the previous terminal line).
Default handler moved from CLI args parser to plugin itself.
Now you can use ProgressPlugin in JS API without specifying handler.
Resolveswebpack/webpack#1000, SRP