Updated the slave to send terminal tasks for terminated executors
during re-registration.

The slave must send terminal unacknowledged tasks for terminal
executors so that the master can correctly reconcile tasks when
the slave re-registers.

Otherwise, the master may see a missing task
(terminal, unacknowledged) on the slave and incorrectly inform
the framework via TASK_LOST, per MESOS-1388.

Review: https://reviews.apache.org/r/21991
Fixed master to properly rescind offers.

Review: https://reviews.apache.org/r/21948
Fixed Master::launchTasks() to inform allocator of unused resources
when any of the offers are invalid.

Review: https://reviews.apache.org/r/21750
Fixed master to remove and rescind offers when a slave is
disconnected.

Review: https://reviews.apache.org/r/21961
Introduced io::redirect.

Review: https://reviews.apache.org/r/21998
Fixed orphaned container handling in the ExternalContainerizer recover implementation.

An orphaned container is known to the ECP but not to the EC, thus not
recoverable but pending. This patch enforces a call to destroy for any
orphan that has been identified as such during the recovery phase.

Review: https://reviews.apache.org/r/21424
Disabled System.Metrics test as per MESOS-1433.

Review: https://reviews.apache.org/r/22000
Fixed missing cloexec and switched to io::redirect in MesosContainerizer.

Review: https://reviews.apache.org/r/22001
Fixed ExternalContainerizer fd leak and premature close.

Review: https://reviews.apache.org/r/21966