Add sysconf names for Android
Implement .size_hint() on new vec iterators
Update size_hint()s on std::iterator Iterators

Add size_hint() to a few Iterators that were missing it.

Update a couple of existing size_hint()s to use checked_add() instead of
saturating_add() for the upper bound.
auto merge of #8602 : sanxiyn/rust/sysconf, r=graydon

Linux and Android share the kernel, but not the C library, so sysconf constants are different. For example, _SC_PAGESIZE is 30 on Linux, but 39 on Android.

This patch
* splits sysconf constants to sysconf module
* merges non-MIPS and MIPS sysconf constants (they are same)
* adds Android sysconf constants

This patch also lets mmap tests to pass on Android.
auto merge of #8604 : kballard/rust/iter-size-hint, r=graydon

Implement `size_hint()` on the new std::vec Iterators.

Add or update `size_hint()` on std::iterator Iterators where appropriate.

r? @thestinger
Refactor type combining to use default methods.  Woohoo!