More StatusStatter specs

Checking that the #record method gets called when the client yields the
block
Rethought control (start/stop) handling

Catching control-c in the #run method was fine for a while, but made
tests that used mock tracker classes fail when reports were gathered
since there were no "real" trackers that could handle that message. I
considered stubbing #new on the tracker classes to return null objects
but this started to feel like too much mocking, which I consider a
design smell. I decided that getting reports should be decoupled from
starting up (and stopping) the StatusStatter and I could use
Tweetstream::Client's #stop method instead of control-c. (I also tried
calling @client#stop in the SystemExit rescue block but it turned out
that the Client would clean itself up so I received an
error message from EventMachine saying it was not initialized).

So what I ended up doing was to move the control-c handling out to the
executable, and giving StatusStatter an explicit #stop method that would
stop the client (as well as record the stop time). Likely a considerable
design improvement.
add helpful startup message