Created base project layout
Created model for saving moves for board states
Added core game objects with 94% test coverage
Fixed occasionally failing board test
Fixed board test to use marker.opponent
Added model for saving game state
Added saving/getting game state
Increased game test coverage to 100%
Added minmax player AI
Added splash and game page prototypes

- Modified AI to accept a player during __init__
- Added splash and game view
- Added splash and game templates
- Added splash and game URLs
- Added splash and game css
- Added images
Added exception for creating Game w/ invalid id
Added Board.json for sending state to browser
Board tests for game_over & json. 100% coverage.
Added websocket server for game interaction

- Added gevent based Flask-SocketIO on back-end
- Added socket.io library js test page on front-end
- Say "Hi" to MarvMin the Paranoid Android.
  (Or don't; he's probably too depressed to care.)
  http://en.wikipedia.org/wiki/Marvin_the_Paranoid_Android
Fixed AI get_best_move to use self if no args passed
Fixed whitespace in board.json causing test failure.
Fixed out-of-order play in board.game_over test
Added working gameplay code to websocket handlers

- join, leave, and move websocket calls now function
- js saves game_id and xo_choice from server response in move form
- Added get_game() helper on back-end
- Checks for game end and notifies client

NOTE: Additional game state validation and cleanup needed.
Merge branch 'feature/game-core' into develop

Core game functionality working. Moving on to front-end js.
Completed front/back-end and websocket integraton

- Added gevent flask websocket server for game play
- Completed front-end html, css, and js
- Added asyncronous AI messages