Saturating math

Implement saturating math in `std::num::Saturating` and use it for `Iterator` impls