Rough cut of an implementation of 2048 in Haskell