Almost complete rewrite:

* Add size_hint on Reader, like on Iterator
* Highlight the precedent of Iterator::size_hint
* Rename reserve_additional to reserve
* Use an estimated range (lower bound and optional upper bound)
  like size_hint, rather than a single estimated number.