Changing worker test setup

We have to use before(:each) rather than before(:all), or our test
doubles don't end up being properly configured(Get "unexpected message"
errors for every example besides the first that uses redis).

This also caught me by surprise, but the reference is here:
https://github.com/rspec/rspec-mocks#use-beforeeach-not-beforeall
Adding configurable # stats to keep + cleanup

Now supports passing the amount of sample data to keep in Redis.  The
default is 180 samples, which at 10 seconds/sample is half an hour's
worth of samples.

The dashboard now uses this amount when starting up to determine how
much data to request from the server.  In addition, the worker will now
clean up any excess samples from Redis.  Clean up is currently done
every time a sample is written(since Redis operations are cheap), but
this could be done less frequently if necessary.
Specify data lifespan rather than # of samples

The end-user can now specify how long data should be kept.  This also
controls how much data is pulled for the chart.

This should be a little more intuitive than specifying the number of
samples to keep.
Merge branch 'data_cleanup'