First commit to bookworm branch
New gametype! BookwormGame

Food generated from String
Smoothed some rough edges on text food thing

Caught exception when run out of letters
Made spaces show as underscores (so you can find them!)
You are what you eat

Snake displays the letters it's eaten as part of its body
Snake fills up on letters before growing

This looks much nicer and cleaner
Resolves #6 - fixed failing tests

These were failing due to github removing github carriage returns on
commit so that when the expected string files were read their line endings
were not matching with the system line.separator property.

Changed ASCIIWorldGenerator to just use linefeed not system line separator
A spot of refactoring: GameState, KeyListeners

Moved the concept of gamestate from game to UI (where it's actually used)

Moved anonymous restart keylistener listener into proper GameKeyListener
class

Made listeners adapters so they don't have unnecessary method stubs
Added start menu
Game config

Game init from config, including config items for game type (Snake and
Bookworm) and difficulty (Normal and Hard)

Designed with consideration to how this will be modified by the start menu
Line ending normalisation for tests

ASCIIWorldGenerator tests to be precise
Progress on start menu for selecting config

Additionally, a tiny bit of ui colour refectoring
Start menu interactive and determines config
Made game return to start menu on escape key press
Merge branch 'bookworm'