[desktop] UTF8 decode byte strings before printing

This annoying bug affects unit tests. Since we're just printing out random byte
strings from random HTTP endpoints, there is no guarantee that we're getting
text. And we often don't, when we do file I/O with WebHDFS. This causes us to
log non-UTF8 safe stuff, which makes nosetest put non-UTF8 data into the XML
report file, which means that Jenkins can't parse it.