euler problems in go, haskell cleanup