if you want the sort of persistent heads up display, it would be possible to implement each region of the ui as either text, or even something like a table view. those commands could be implemented as buttons, etc. the ui designer might help to lay out the general format.
if you want to stick to text, you can add a bit of old school flair by using some ascii(Unicode) art.
'''wrap some text in an ascii box.
optionally specify width and height to fill.
example:
>>> print makebox('four score and seven years ago...',15,7)
╔═══════════════╗
║four score and ║
║seven years ║
║ago... ║
║ ║
║ ║
║ ║
║ ║
╚═══════════════╝
'''
def makebox(text,width=25,height=12):
s=textwrap.fill(text,width).split('\n')
return (u'\u2554'+width*u'\u2550'+u'\u2557\n'
+height*(u'\u2551'+'{'+':{}'.format(width)+'}'+u'\u2551\n')
+u'\u255a'+width*u'\u2550'+u'\u255d\n').format(*(s+(height-len(s))*['']))