Fixing updater diff by converting TaskConfig to sorted json tuples.

Reviewed at https://reviews.apache.org/r/16311/
Fixing test_update test.

Reviewed at https://reviews.apache.org/r/16745/
Use a separate thread for Driver.join() to avoid stalling the executor service.

The unit test changes were made to reproduce AURORA-25 (and happen to be more
true to real-world behavior).

Also, running the scheduler locally prior to this change would silently
reproduce this issue (not joining the server set).

Bugs closed: AURORA-25

Reviewed at https://reviews.apache.org/r/16743/
Client quota checks. Part 1: client side changes.

Reviewed at https://reviews.apache.org/r/16444/
Fix TaskPath import in thermos binary

Testing Done:
[tw-172-25-27-94 aurora (jsmith/wat)]$ ./pants ./src/test/python/apache/thermos/bin:all
Build operating on targets: OrderedSet([PythonTestSuite(src/test/python/apache/thermos/bin/BUILD:all)])
=============================================================== test session starts ================================================================
platform darwin -- Python 2.7.3 -- pytest-2.5.1
collected 0 items / 1 errors

====================================================================== ERRORS ======================================================================
_______________________________________ ERROR collecting src/test/python/apache/thermos/bin/test_thermos.py ________________________________________
src/test/python/apache/thermos/bin/test_thermos.py:1: in <module>
>   from apache.thermos.bin import thermos
/var/folders/kk/_7jrv7jd0095tg5x9w1qd8mw0000gp/T/tmpIWqDim/apache/thermos/bin/thermos.py:21: in <module>
>   from apache.thermos.common.path import TkPath
E   ImportError: cannot import name TkPath
============================================================= 1 error in 0.09 seconds ==============================================================
src.test.python.apache.thermos.bin.test_thermos                                 .....   FAILURE

# updated import statement

[tw-172-25-27-94 aurora (jsmith/wat)]$ ./pants ./src/test/python/apache/thermos/bin:all
Build operating on targets: OrderedSet([PythonTestSuite(src/test/python/apache/thermos/bin/BUILD:all)])
=============================================================== test session starts ================================================================
platform darwin -- Python 2.7.3 -- pytest-2.5.1
collected 0 items

=================================================================  in 0.15 seconds =================================================================
src.test.python.apache.thermos.bin.test_thermos                                 .....   SUCCESS

Bugs closed: AURORA-26

Reviewed at https://reviews.apache.org/r/16762/
Change name of client console script to aurora.

Reviewed at https://reviews.apache.org/r/16797/
Dropping scheduler_list_job_updates from aurora_admin

Reviewed at https://reviews.apache.org/r/16834/
client v2: added implementations of job diff, job inspect.

Implemented client v2 versions of the diff and inspect verbs.

Testing Done:
Added new unit tests for "diff"; inspect doesn't do any API calls that aren't already tested.

Reviewed at https://reviews.apache.org/r/16423/
When rescheduling a task, send it to the THROTTLED state if it has been
penalized for flapping.

Bugs closed: AURORA-23

Reviewed at https://reviews.apache.org/r/16740/
Fix build break caused by a584410.

Testing Done:
./pants src/test/python:all

Reviewed at https://reviews.apache.org/r/16868/
Begin cleanup of StateManager interface by removing state change via Query.

State changes via a broad query is a rarely-used feature, and probably usually
not a good idea.  The query-based API was useful because it sometimes saves
code at the call site, but the big downside is that it makes it more difficult
for StateManager to perform course-correcting operations.
The test case added to StateManagerImplTest illustrates a now-fixed regression
that could contribute to state drift between the scheduler and the outside
world.

Bugs closed: AURORA-27

Reviewed at https://reviews.apache.org/r/16767/
Client quota checks. Part 2: server side changes.

Reviewed at https://reviews.apache.org/r/16629/
Converting py source dist versions to upper() for consistency with java side.

Reviewed at https://reviews.apache.org/r/16741/
Fix bad merge commit

I noticed that there was some code in src/test/python/twitter that
shouldn't've been there.  This also uncovered a malformed BUILD and some
broken tests.

The test_status_wildcard still fails if you have /etc/aurora or ~/.aurora
populated with a clusters.json, but this probably won't be true on jenkins.

Reviewed at https://reviews.apache.org/r/16919/
Script for creating tags. The workflow is as follows:

Example for tagging 0.2.0-SNAPSHOT
0. Sanity checks.
1. Create a release-0.2.x branch off master.
2. Create a single commit on that branch moving .auroraversion from 0.2.0-SNAPSHOT to 0.2.0.
3. Create a tag 0.2.0 for that commit.
4. Create a commit on master moving .auroraversion from 0.2.0-SNAPSHOT to 0.3.0-SNAPSHOT.
5. More sanity checks, then everything can be pushed, downstream artifacts can be built/published.

Testing Done:
% ./build-support/tag-release
== Updating to latest master.
Current branch master is up to date.
== Incrementing snapshot version on master.
[master b8794ae] Incrementing snapshot version from 0.2.0-SNAPSHOT to 0.3.0-SNAPSHOT.
 1 file changed, 1 insertion(+), 1 deletion(-)
== Creating release-0.2.x branch.
Switched to a new branch 'release-0.2.x'
== Committing updated .auroraversion.
[release-0.2.x b3bab21] aurora-0.2.0 release.
 1 file changed, 1 insertion(+), 1 deletion(-)
== Creating tag 0.2.0.
== Tag created.

After you've verified that everything looks good, publish the new tag by running:
  git push origin master
  git push release-0.2.x master
  git push 0.2.0 master

Reviewed at https://reviews.apache.org/r/16265/
Fixing admin scheduler_print_recovery_tasks.

Reviewed at https://reviews.apache.org/r/16931/
Fix broken test in client.cli.job

Fixes broken test runs introduced in commit a49d94c 'Fix bad merge commit'

Bugs closed: AURORA-41

Reviewed at https://reviews.apache.org/r/16945/
Sign tags using the GPG key associated with the configured git email address; fix
rollback instructions and move tag-release script to new "release" subdir

Reviewed at https://reviews.apache.org/r/16941/
Scheduler home page new using AngularJS and UI client

Implemented new Scheduler home page using AngularJS. The UI queries the backend
using the thrift end point. This diff sets the basic foundation for the page.
Sending this out to get some early feedback and to keep the future diffs small.

The URLs in the new UI will redirect to the scheduler role pages.

Dropped the option to select number of results to be shown to simplify the
interface. Now defaulting to 25 results per page.

Cleaned up the UI to make it more light weight.

Updated build.gradle to generate thrift JS client.

Installed Angular and smart-table from bower. Added thrift.js file to make the
calls to the backend. Will migrate to angular-thrift for more robust
implementation in coming diffs.

Testing Done:
gradle clean build

Tested the UI using the isolated scheduler.

Bugs closed: AURORA-33

Reviewed at https://reviews.apache.org/r/16528/
Initial import of Aurora documentation.

Bugs closed: AURORA-47

Reviewed at https://reviews.apache.org/r/16615/