Support for tag-driven publishing on Travis.

Modify travis build to derive the project version from TRAVIS_TAG (when
set). as well as to have sbt run the `publish-signed` task if the
environment is right. The tag must match the semver regex
`^v[0-9]+\.[0-9]+\.[0-9]+(-[A-Za-z0-9-]+)?`, and the jdk we're running on
must match PUBLISH_JDK (set in .travis.yml).

For every repo, you must create the following files (not included here)
according to the instructions in admin/gpg.sbt:
- admin/pubring.asc      (commit)
- admin/secring.asc      (DO NOT COMMIT)
- sensitive.sbt          (DO NOT COMMIT)
  - passphrase for secring.asc
  - api token for staging to sonatype

Generate these using `admin/encryptAll.sh`:
- admin/secring.asc.enc  (commit)
- sensitive.sbt.enc      (commit)

Note that `encryptAll.sh` spits out a "- secure .... " line, that you need
to add to `.travis.yml`'s `env` section, so that travis can supply the
SECRET env variable, which is used to decrypt the sensitive files above.