Fixed slave to validate slave id during (re-)registration.

Review: https://reviews.apache.org/r/12122
Added missing os/exists.hpp to un-break the build.
Simplify os::hostname() in libstout.

Review: https://reviews.apache.org/r/11108
Include pre/post-package hook scripts in Hadoop tutorial.

Review: https://reviews.apache.org/r/11110
Allow ending Hadoop tutorial early.

Allow someone to end tutorial after building/packaging complete.  You
can also skip the test part by exporting SKIP_TESTS (i.e., 'make hadoop
SKIP_TESTS=1').

Review: https://reviews.apache.org/r/11111
Check for Python.h in configure script.

Review: https://reviews.apache.org/r/11114
Use more portable paths for tutorial test.

Review: https://reviews.apache.org/r/11115
Fix TaskTracker pending tasks calculation.

Review: https://reviews.apache.org/r/11116
Ignore unhealthy TaskTrackers.

Review: https://reviews.apache.org/r/11117
Be more intelligent about slot allocation.

When we get a resource offer, we'll try to be clever about how we
allocate slots to the offers.  Ideally we want to use as much of the
resources available when we have a lot of pending tasks, and we also
don't want to use more resources than we actually need.

Review: https://reviews.apache.org/r/11118
Don't prematurely kill TaskTrackers.

We assign the JobID to the internal Mesos tracker (for the TaskTracker)
rather than the TaskID.

In the case where a TaskTracker has only map tasks assigned to it and
they have all completed, we mustn't terminate the tracker until the
entire job has finished, including the map tasks.

Review: https://reviews.apache.org/r/11119
Shuffle offers before sending to frameworks.

This helps ensure fair allocation of resources.

Review: https://reviews.apache.org/r/11121
Kill tasks that never properly launch.

After trying to launch a task tracker, we'll wait up to 5 minutes before
giving up and killing the task.

Review: https://reviews.apache.org/r/11124
Terminate executors that aren't needed.

If we launch an executor and then kill the task immediately after, make
sure we also terminate the executor when there are no other tasks.

Review: https://reviews.apache.org/r/11125
Make sure you clean up the cgroups test.

Sometimes the cgroup test fails because the directory is already there.
This should ensure that it gets cleanup up in that case before we exit.

We'll also check that it exists before we try creating it.  If it
already exists, we'll skip the creation.

Review: https://reviews.apache.org/r/11126
More cgroup killTask() logging.

Review: https://reviews.apache.org/r/11129
Allow some JVM memory vars to be configured.

Review: https://reviews.apache.org/r/11130
Changed cgroups killTasks() sequence.

The sequence is as follows:
  stop -> kill -> empty -> freeze -> kill -> thaw -> empty

We also now ignore ESRCH errors from kill() in cgroups::kill().

Review: https://reviews.apache.org/r/11131
Don't accept offers on the same host/port.

We'll try to find a port combination that hasn't already been used to
launch a TaskTracker.

Review: https://reviews.apache.org/r/11161/
Write Mesos JobTracker stats to state file.

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