Haskell implementation of problems from Euler Project