Buffer chunked input in Logger#<< to improve output formatting.

Any remaining non-newline terminated line will be buffered in the Logger
until the next `#<<` invocation, and will then be prepended to the next
message. The effect is to only emit full message lines at a time and to
avoid emitting partial lines.
Default to use Chef formatter output for solo & zero provisioners.

The current default behavior of chef-client & chef-solo runs is to use
the default output formatter and a logger with level "auto" (note, not
"info"). Thus, when running Kitchen with its default logging level
("info"), the resulting Chef runs will use log level "auto". When
running Kitchen with a log level other than "info", this value will be
passed down to the `--log_level` flag for Chef. In this way we still get
debug level output when required.
Merge pull request #478 from test-kitchen/chef-formatting

Buffer Logger output & fix Chef run output formatting