Added timeval retrieval from sysctl.

Review: https://reviews.apache.org/r/16336
Added os::bootId.

This can be used to identify a reboot, should the boot id change.

For OS X and POSIX systems, the boot time in seconds from sysctl and
utmpx (respectively) are used as a good approximation for a unique
boot id.

Review: https://reviews.apache.org/r/16235
Updated the slave to not recover after a reboot.

Review: https://reviews.apache.org/r/16238
Added equality comparator for Option<T> vs T.

From: Jiang Yan Xu <yan@jxu.me>
Review: https://reviews.apache.org/r/16332
Fixed group to not retry when non-retryable errors are encountered.

From: Jiang Yan Xu <yan@jxu.me>
Review: https://reviews.apache.org/r/16290
Changed master detector to return Future<Option> instead of
Future<Result>.

Now that local session timeouts are transparent to the clients of the
master detector, they are not supposed to retry anymore. Thus passing
"Result<UPID> previous" back into MasterDetector::detect() is no
longer correct.

From: Jiang Yan Xu <yan@jxu.me>
Review: https://reviews.apache.org/r/16291
Updated Group to discard futures instead of failing them upon
destruction.

From: Jiang Yan Xu <yan@jxu.me>
Review: https://reviews.apache.org/r/16345