Remove 'fold' from barn-agent loop.

The fold makes the code safer but I think it is at the cost of
the code being readable for someone new to the project. I've
removed it to hopefully make the steps easier to see.

This change also ensures that barn-agent doesn't failover when it's got a
'flacky' connection i.e. where it's managing to ship some files out of the
entire list. In production barn-agent can often end up running like this.
Add logging directory to tests.
Send metric if barn-agent is shipping all log files.

This is a good sign that something has gone wrong. Either barn-agent has
failed over or something has gone wrong with the middle node.
Allow both telemetry reporting and channel failover to be disabled.
Fix single character command line arguments.
Make dependence on '@' log files explicit.

barn will only ship log files beginning with '@', but no filtering for
those files was done until after rsync dry run. This change makes that
dependence more explicit and by doing so does more filtering. Also
removes bug that a directory with a non '@' file would probably cause
no shipping.
Add method to disable barn-agent in an emergency.

As barn-agent often runs under chef/puppet type environments it can be
difficult to disable a single instance. This change puts in an
emergency disable filename that operators can use to stop errant processes
from shipping.
Slight change to what gets logged to stdout.
Move 'create_metrics' to be rest of metrics code.
Add an explict command line check of seconds before failover.
Add comment about heartbeating channel.
Merge pull request #20 from soundcloud/conor/barn_code

Remove 'fold' from barn-agent loop.