[MESOS-1212]: Use maven to compile and package Mesos' Java files.

The Mesos Jar files are now generated through Maven. This update also
adds a _shaded protobuf jar_ that contains the _protobuf_ version _shaded_
inside the `org.apache.mesos.protobuf` namespace.

List of Java Artifacts.

* mesos-<Mesos Version>-javadoc.jar
* mesos-<Mesos Version>-shaded-protobuf.jar
* mesos-<Mesos Version>-sources.jar
* mesos-<Mesos Version>.jar

Where `mesos-<Mesos Version>-shaded-protobuf.jar` will be the dependency
that a _framework_ should use to avoid any conflicts of _protobuf_
versions that it might have with other _dependencies_. Not that
`shaded-protobuf` is the _dependency qualifier_.

Applied patch from:
    https://reviews.apache.org/r/20402/

ticket : https://issues.apache.org/jira/browse/MESOS-1212
[MESOS-1212]: Use maven to package Mesos' Java files

Ported to Mesos 0.16.0 patch from:
   https://reviews.apache.org/r/20402/diff/raw/

[ticket: MESOS-1212]: https://issues.apache.org/jira/browse/MESOS-1212

Author      : guenter
Reviewer    : benh, pwendell
Testing     : berngp
[MESOS-1212]: You can now specify MAVEN_HOME

The build now supports the `MAVEN_HOME` environment variable which is
used to resolve the `mvn` executable. If no `MAVEN_HOME` is specified we
will use the one available in the `PATH`.
[MESOS-?]: Fixing Javadocs so the build doesn't fail in Maven.

The Maven _package_ task will depends on the _javadoc_ task. The
_javadoc_ task fails if there are _Classes_ which expose _public_ fields
or methods without proper _Java Documentation_. Note that my proper I am
referring to the structure validation that _Javadoc_ executes and not a
proper narrative of such documentation.

This change addresses the issues that caused failures on the Maven
Javadoc plugin while attempting to add meaningful content to such
documentation.
[MESOS-1260]: Applying MESOS-1212 port for Mesos 0.16.0

Use maven to compile and package Mesos' Java files.

We currently package our own jars which means we can't easily take advantage of maven
plugins such as the shade plugin which we'd like to do for MESOS-1203
. We might as well leverage maven for building Java. It would be great to check for
maven during configure then too.
[MESOS-1260]: [PATCH] [MESOS-1252] Support ENV MAVEN_HOME on the build.

The build now supports the `MAVEN_HOME` environment variable which is
used to resolve the `mvn` executable. If no `MAVEN_HOME` is specified we
will use the one available in the `PATH`.

ticket: https://issues.apache.org/jira/browse/MESOS-1252
[PATCH] [MESOS-1259]: Enrich the Java Docs in the src/java files.

The Maven _package_ task will depends on the _javadoc:javadoc_ task. The
_javadoc_ task fails if there are _Classes_ which expose _public_ fields
or methods without proper _Java Documentation_. Note that by proper I am
referring to the structure that is validated by the _Javadoc Tool_.

In addition such documentation should facilitate the development of Java
based frameworks.