Always relativize the classpath where possible.

Mesos produces very long path names, and repeating these names in the classpath can exceed the max length of a single argument (which defaults to 131072 on Linux).

Testing Done:
https://travis-ci.org/pantsbuild/pants/builds/43541955

(and then ran new tests locally).

Reviewed at https://rbcommons.com/s/twitter/r/1455/
Fix gitignore path for bin to only include root bin directory
(which is created by eclipse); remove unnecessary unexclusions.

Reviewed at https://rbcommons.com/s/twitter/r/1456/
s/whre/where/ in first tutorial

Reviewed at https://rbcommons.com/s/twitter/r/1464/
Fix a bug where a request for help wasn't detected.

Testing Done:
options unittests pass.

Reviewed at https://rbcommons.com/s/twitter/r/1467/
Get rid of the Command class completely.

GoalRunner now just extends object.

The functionality previously in Command is now in GoalRunner.

Most of the functionality in pants_exe.py is now in GoalRunner too.

RIP old pants...

Testing Done:
All integration and unit tests pass.

Reviewed at https://rbcommons.com/s/twitter/r/1465/
Optimize goal changed

Make goal changed approximately O(paths + targets), instead of something much worse.

Testing Done:
Correctness: https://travis-ci.org/pantsbuild/pants/builds/43764453

Performance: tested on a megachange branch on Twitter's monorepo; previous time was on the order of hours; time with patch is 3 minutes.

Reviewed at https://rbcommons.com/s/twitter/r/1470/
Handle UTF-8 in thrift files for python

Testing Done:
Ran new tests (red/green/go)

Reviewed at https://rbcommons.com/s/twitter/r/1459/
Move GoalRunner to the bin package, together with pants_exe.py.

Gets rid of the command package.

Testing Done:
Pants builds. Dev and regular pants work.

Reviewed at https://rbcommons.com/s/twitter/r/1471/
docs: update a couple of examples that showed Pants output. old Pants output

specifically, we caught these as places that contain the string "BUILD:", and
in a refactor a while back, that string was a symptom of obsolescence.

We fixed most of those in passing, but these remain, https://github.com/pantsbuild/pants/issues/461

Testing Done:
rendered at
* http://pantsbuild.github.io/lahosken-demo/build_files.html#debugging-a-build-file
* http://pantsbuild.github.io/lahosken-demo/publish.html#does-not-provide-an-artifact

Bugs closed: 461

Reviewed at https://rbcommons.com/s/twitter/r/1401/
Cleanup after custom options bootstrapping in reflect.

The custom bootstrapping to get a symbolic buildroot for
doc generation was affecting global state and leaving a
buildroot of <buildroot> laying around for subsequent code
to pick up and unwittingly try to use.

Testing Done:
Locally this was failing before, passed after:
```console
$ PANTS_DEV=1 ./pants goal test tests/python/pants_test/tasks:reflect tests/python/pants_test/backend/python:test_builder
```

Also generated docs and confirmed the intended symbolic <buildroot> was being interpolated: http://pantsbuild.github.io/jsirois/goals_reference.html#Common

Installed python 3.2.5 after which the following failed but then passed after diff 3:
```console
$ PATH=/home/jsirois/.pyenv/versions/3.2.5/bin:$PATH pants.dev goal test tests/python/pants_test/tasks:reflect tests/python/pants_test/backend/python:test_builder
```

CI went green here: https://travis-ci.org/pantsbuild/pants/builds/43773742

Bugs closed: 861

Reviewed at https://rbcommons.com/s/twitter/r/1468/
Restore the deprecation warning for specifying 'goal' on the cmdline.

Reviewed at https://rbcommons.com/s/twitter/r/1476/
Fixup test_test_builder.py interpreter caching.

Comparing PythonInterpeters directly is currently broken for systems
that have atime turned on for the filesystem hosting the python binary.
This localizes the 'correct' equality check proposed in:
  https://rbcommons.com/s/twitter/r/1477/

Testing Done:
The same change was tested against OSX here: https://travis-ci.org/pantsbuild/pants-for-travis-osx-ci/builds/43799766

This change went green against linux CI here: https://travis-ci.org/pantsbuild/pants/builds/43803116

Bugs closed: 865

Reviewed at https://rbcommons.com/s/twitter/r/1478/