Added `container_base` to replace `const_container_base`.

In addition:
- `integer_iterators no longer have static members `begin` and `end`.
- `const_container_base` is deprecated.
- Documentation improvements.
- Removed `explicit` from constructors (why were they there in the first
  place?).
- New `container_base` has slightly different semantics; should be clearer
  in the docs now too.
- Added missing docs for `iterator_range` (forgot it even existed).
- Added some deprecation info.