Added a menu and key scrollable button list. Misc. changes.

* ButtonList.cs, MenuScene.cs:
  Initial version.

* Game.cs:
  Changed default scene to the menu.
  Added generic GetScene() method to avoid having to manually cast
  elsewhere.

* EndGameScene.cs:
  Added escape key handler.

* GameScene.cs:
  Added escape key handler.
  Now only starts a new game if one is not in progress when set active.

* Button.cs:
  Added the ability to disable the button.
  Added disabled idle / hover colors.
  Added Press() method.

* Extensions.cs:
  Added Truncate() method.