Sbt builder fix and refactor

* Fixed the issue with lost deprecation warnings. #1002148
* Refactored and removed useless indirection in the build reporter

The best would be to review the two commits separatetly. The first one fixes the issue, the last one is purely cleanup.

/cc @gkossakowski
This is not new code, but it looks wrong to me. I would expect it to be

```Scala
monitor.setWorkRemaining(total - current)
```

It is possible that in practice, `current` is equal to `savedTotal` when the total change, but I see no guarantees of that.