Add a game controller/widget

This is really a widget.  Checking in so I can
easily change the names.
Rename classes

Lots of stupidity with fugitive.  I hope I did this
properly... :-P
Change render semantics

Render now returns an array of lines for output.
They are meant to be joined with newlines.
Also updated the main code to use the widget.

Note: tests are kind of crappy, but not sure how
to make them better.
Sleepy

Stupid code checking in.  Too sleepy to fix it.