Document helios job file format
[maven-release-plugin] prepare release 0.8.5
[maven-release-plugin] prepare for next development iteration
[maven-release-plugin] prepare release 0.8.6
[maven-release-plugin] prepare for next development iteration
Implement job stop/undeploy grace period

Grace period will deregister a running container first
and wait specified number of seconds before stopping
or undeploying.
Merge pull request #150 from spotify/dxia/grace-period

Allow for grace period parameter in job
Revert "Use nexus-staging-maven-plugin"

This reverts commit b1dc8927c8c14a2b38b76e70ed861593867d45dd.
[maven-release-plugin] prepare release 0.8.7
[maven-release-plugin] prepare for next development iteration
Merge pull request #160 from spotify/dxia/doc-helios-job-file

Document helios job file format
Added api documentation submodule

It is the place where the API documentation is built
Merge pull request #161 from spotify/drewc/usedogc

Added api documentation submodule
Revert "Revert "Use nexus-staging-maven-plugin""

This reverts commit 821075e1e5841ff06294c569ab3e298b5c2ec02c.
Don't attach debs as maven artifacts

By default, jdeb attaches all generated debs as artifacts. We don't want
to do this because it causes intermittent failures when deploying to
sonatype using the nexus-staging plugin.

The helios-services module generates 3 debs - master, agent and services.
Because jdeb doesn't handle multiple artifacts very well, when they get
installed (via the maven-install-plugin) they all get named
helios-services_<version>.deb, each being overwritten by the next one.
The gpg plugin generates signatures for all 3 debs, which are also treated
as artifacts and get installed along with the debs. When the signature files
get installed, their names get changed just like the debs, so they all get
named helios-services_<version>.deb.asc. But unlike the debs, the asc files
may not overwrite each other, so you can end up with a signature file
which was generated for a different deb. And this causes the deployment
to sonatype to fail with an "invalid signature" error.

Also, attaching them as artifacts is a bit wasteful, because it means we
upload ~15MB of debs to sonatype even though they will never be used.
And if you run mvn install locally, they get copied into your local
maven repository, but again they will never be used.
Merge pull request #162 from spotify/rculbertson/fix-build

rculbertson/fix-build
Refactor Target.java and add tons of tests

Make ExplicitTarget have just one URI instead of a list of URIs.
This allows us to not collapse multiple master endpoints into one
target, which will enable better CLI output later on.

E.g. `helios jobs --master master1 --master master2 --json` outputs

```
{
  master1: {A},
  master2: {B}
}
```

instead of

```
{
  A+B
}
```

Return subclass themselves
Add David Xia to list of developers in pom
Merge pull request #164 from spotify/dxia/list-of-devs

Add David Xia to list of developers in pom
Merge pull request #163 from spotify/dxia/refactor-target

Refactor Target.java and add tons of tests