[NOT FOR MERGE] Executor (CommandInfo) health checks

For review.

Supersedes #362
See issue #359 

_Note that build failures are due to the unavailability of the mesos-0.20.0.jar. To test locally, it's necessary to build a recent mesos and manually install it in to your local maven repository._

**Testing:**

1. Build a recent (0.20) Mesos

        $ cd <mesos-project-dir>
        $ mkdir build && cd build
        $ ../configure --disable-python
        $ make && make install

1. Add the Mesos Java artifact to your local maven repository

        $ cd <mesos-project-dir>/build/src/java
        $ mvn install:install-file -Dfile=target/mesos-0.20.0.jar -DpomFile=mesos.pom

1. Check out this branch of Marathon

        $ git clone git@github.com:mesosphere/marathon.git && cd marathon
        $ git checkout mesos-command-health-checks

1. Build Marathon

        $ sbt clean assembly

1. Start ZK

        $ sudo zkServer start

1. Start the mesos master and slave

        $ sudo mesos-master --zk=zk://localhost:2181/mesos --work_dir=/var/log/mesos --quorum=1
        $ sudo mesos-slave --master=zk://localhost:2181/mesos

1. Run Marathon with executor health checks enabled

        $ bin/start --master zk://localhost:2181/mesos --zk zk://localhost:2181/marathon --executor_health_checks

1. Start an app with a command health check defined

        $ http -v POST localhost:8080/v2/apps < toggle-command.json

    listing: _toggle-command.json_

    ```json
    {
      "id": "toggle",
      "cmd": "python toggle.py $PORT0",
      "cpus": 0.2,
      "disk": 0.0,
      "healthChecks": [
        {
          "protocol": "COMMAND",
          "command": { "value": "env && http http://$HOST:$PORT0/" }
        }
      ],
      "instances": 2,
      "mem": 32.0,
      "ports": [0],
      "uris": ["http://downloads.mesosphere.io/misc/toggle.tgz"]
    }
    ```

1. Monitor the health status as reported by the Marathon API

        $ http GET localhost:8080/v2/apps/toggle/tasks

It can't, since the resulting sequence should be in one-to-one correspondence with the health check sequence defined for the app.  The meaning of `None` is that there is no health information yet for the health check at that index for this task.