Fix up warnings
Split cabal project into lib and exe

The library is the core logic for the character sheet
The executables are
    - a test that pretty prints json
    - the server which interfaces with the web server