added: some haskell files.  The theory is, if I can model it in Haskell, I might not be full of shit after all