Improve play facilitation code

Changes revolve around making the code that facilitates play cleaner.
Some simple documentation is provided for the main routine.