Fixed bug with round robin scheduler.

Previously, when the round robin task scheduler tried to launch a task for a
given user and all tasks in that job had already been launched, the user lost
that particular spot. This commit changes that behavior so that instead, if
all tasks in the particular job were launched, the scheduler tries to launch
another task for the same user.
Made choice of user in FairnessTestingFrontend deterministic.

This change is intended to make the fairness graph less jagged,
because there's no added variance from the fact that jobs are
probabilistically assigned to users.
Added isolation bash script
Updates to support cluster compute instances.

This commit adds a flag to the ec2 script to specify the number of slots,
and incresaes the number of threads used by the thrift servers to support
up to 16 cores.
Made selection of which user's task to run from the proto frontend deterministic
Fixed problem where backend didn't use enough worker threads
Increased size of client pool
Made task interarrival delay deterministic in proto frontend
Increased scheduler threads to accommodate 16-core machines
Made periods shorter for fairness experiment
Added frontend to test heterogeneity
Change to protobackend to prevent integer overflow
Removed old, out of date simulation code.
Fixed compilation errors in tests and deleted old, unused test
Cleanup and improved commenting
Removed TResourceVector cruft.

A resource vector was still used in some places, even though Sparrow
uses a simpler slot model.  Most of the code was broken or only partially
working; this commit removes all of that cruft.