benchmarking

This adds the rake task benchmarks:run, which calls a bunch of other tasks in the same file to:
- drop all keys in the test redis db
- generate a series of events for flapjack to process (sensitive to a number of environment variables)
- starts up flapjack in a separate process, and with perftools.rb loaded to generate a cpu profile, and waits for it to exit
- generates a json file with a summary of the benchmark parameters and results (eg events per second)
- generates perftools.rb text and pdf reports

The benchmark test now makes use of the 'exit_on_queue_empty' configuration item of the processor pikelet so it'll shut down flapjack when all the events have been processed. 

The idea of the shutdown event in processor has been removed, now stop will create a 'noop' type event to tickle the event processor loop when quitting.