A Game Engine in the Elm Style