Support Docker and ContainerInfo

* Bump the mesos dependency to 0.20.0
* Create ExternalContainerInfo and ContainerInfo classes in
  MesosSlaveInfo to better map with the Mesos API.
    - ExternalContainerInfo replaces can be used by external
      containerizers
    - ContainerInfo is to be used with the new containerizer system
      (only DOCKER is supported right now)
* Add ability to specify Volumes
* Refactor a bit the config parts to use the MesosCloud and
  MesosSlaveInfo objects everywhere.

I am not entirely familiar with jenkins plugin system and Jelly. So let me know if i should update things or if it's not meant to be like that.

With this new mechanism, adding new "features" from Mesos will be easier since you just need to add field in the jelly file for UI, the MesosSlaveInfo file and then the JenkinsScheduler to translate it into TaskInfo... Still cumbersome but easier to grasp (for me at least)

I tested this and it works with the official java docker container.
Whoops i deleted it when I started working since I didn't understand it at the time. Now it appears to be some way to validate the form by reading JSON and building the slaveInfos. Right? I will fix this.