Initial pass at using randomly generated maps in game.

Tweaked the visibility algorithm slightly as well.
Begin adding some additional actions.
Factor out screen buffer logic to be useful to other parts of the codebase.