Refactor Chess-module to use Reader monad
Resolving missing definitions
Slowly working off compile errors
Monad magic
Chess module compiles
move promote-function into chess utils
Cleanup using hlint
Split up Chess code into submodules