algorithm: support faster use-case to greatest_le, with the caller supplying the upper bound.
algorithm: yet another bug fix to greatest_le.
algorithm: added nth_zero_based.
algorithm.hpp: fix stupid bugs in nth_zero_based.
Update to C++11 libraries. Also revamp selective_iterator to be more like boost::filter_iterator, minus the essential difference that predicates are evaluated over iterators and not their targets.
Factor selective_iterator into a mixin and a basic client of the mixin.
Add rotate.hpp with basic bitwise rotation functions.