It probably makes sense to comb through all the existing output, and ensure it is going to the appropriate output pipe (STDERR or STDOUT); for example the version banner probably makes more sense to go to STDERR.
Also at the same time, investigate if it makes sense to add a JSON formatted output for some commands (e.g. pie show).