interesting change to command: to removed its existential type, turning its body simply into (List String -> Player -> IO ()). but a smart constructor exists to allow users to still use it in the way they would expect.
just some small build file changes.