Introduced Mesos modules abstractions.

Adding a first class primitive, abstraction and process for dynamic
library writing and loading can make it easier to extend inner
workings of Mesos. Making it possible to have dynamic loadable
resource allocators, isolators, containerizes, authenticators and much
more.

Review: https://reviews.apache.org/r/25848
Added style/syntax changes made to modules abstractions.

This was done by Kapil Arya, Niklas Nielsen, and myself.
Replaced hard tabs with spaces in module/manager.cpp.

Review: https://reviews.apache.org/r/26467
Fixed framework logging in master.cpp.

Review: https://reviews.apache.org/r/26159
Introduced Master <-> Slave reconciliation.

Review: https://reviews.apache.org/r/26206
Split out partition and reconciliation tests from FaultTolerace tests.

Review: https://reviews.apache.org/r/26207
Added a test for the Master <-> Slave reconciliation race.

Review: https://reviews.apache.org/r/26208
Disallowed duplicate module names.

Module manager should return error on encountering a duplicate module
name (i.e. if a module with the same name has already been loaded).

Review: https://reviews.apache.org/r/26513
Update metrics::Timer::stop to return elapsed time.

Review: https://reviews.apache.org/r/24537
Added batch sizes and timings to the Registrar logging.

Review: https://reviews.apache.org/r/26535
Added markdown formatting to the committer's guide.
Added committer's guide to the documentation index.
Removed unused resources and duplicated attributes from Slave.

Review: https://reviews.apache.org/r/26470
Moved executor checkpointing code from the Executor constructor.

Review: https://reviews.apache.org/r/26525
Added libprocess finalization.

Introduced a finalize() function to match the initialize() function in
process.hpp. Use this at the unit test runner for libprocess to start
getting more valuable valgrind feedback.
Added cleanup of remaining Processes in ~ProcessManager() as a start.

Review: https://reviews.apache.org/r/26533
Changed modules to accept relative path or file name for library name.

Rename "path" in Modules protobuf to "file" since a "path" always
referes to an absolute or a relative path, whereas "file" may refer to a
path or a file name. If "file" contains a slash ("/"), it is considered
an absolute or relative path, otherwise if is considered a file name.
For file name, dlopen() automatically does a standard library path
search to find the absolute path.

Also, return a better error message if an empty module name is provided.

Review: https://reviews.apache.org/r/26529
Exposed p90/95/99 for tcp rtt container stats.

Review: https://reviews.apache.org/r/26396
Made the StatusUpdateManager injectable for mocking purposes.

Review: https://reviews.apache.org/r/26579
Added --module flag for Mesos master.

Review: https://reviews.apache.org/r/26508
Fixed small typo in master module flags description.

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