Print successful command along with their output.

For "misbehaving" commands printing stuff on stdout/stderr on
success, ninja's output gets hard to follow because the command
is not recall before its output. This patch attempts to fix this.
Printing 'still-running' spinner for long-running commands
Emitting output of commands running solo in real time

(as opposed to holding commands output until these finish)
Do not print the status twice when running solo in non-smart terminal.