runner: More extensive Python 3 universal_newline fixes
When pv32pae is disabled e.g. due to CET being active, under Python 3, we
still get:
Executing 'xl create -p tests/example/test-pv32pae-example.cfg'
b'Parsing config from tests/example/test-pv32pae-example.cfg\nlibxl: error: ...\n'
Error: Failed to create VM
out, rather than `xl create`'s stdout/stderr rendered nicely.
All subprocess invocations we make will want universal_newlines, so wrap the
functions to have it active by default, but still allow it to be explicitly
turned off by passing universal_newlines = None.
Reinstate the use of check_output() now that we've upped the minimum python
version to 2.7.
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>