REL-792 : allow dogstream to process multiple lines at once

When a specified log file is being written at a rate which is faster
than its processing rate, then TailFile.tail never yields, which causes
the datadog agent to time out and kill itself.

To mitigate this, TailFile is extended to allow reading all available
lines from the log file and passing them all to a callback, instead of
invoking the callback for every line separately.

The Dogstream._line_parser() method is changed to handle multiple lines
instead of one.

This is not a perfect solution:

- the processing might fall behind
- the processing might still time out
- need to store a lot of strings (lines from the log file) in memory
REL-792 : add unit test for TailFile with multi
REL-792 : change mistaken return statement
Merge pull request #1 from ovesh/jira/REL-792

Jira/rel 792