[fix result of ListCata.headTail
Helmut Grohne <grohne@cs.uni-bonn.de>**20150219133852
 Ignore-this: 17b14ad9d0135bcc041c5f9b5a933665
 
 When headTail was given a TExp "[a]", it was returning an returning an
 application of "(:) []" as the tail, but the expected tail actually is "[]".
 This was due to the extraneous "foldTAppE o" in the result. Ultimately, this
 resulted in broken IOs when enabling enhanced.
] hunk ./src/Igor2/RuleDevelopment/ListCata.hs 302
-headTail (l@(TAppE _ _))             =
-    let (o@(TConE n _):x:xs) = unfoldTAppE l
-    in if isCons n then return (x,foldTAppE o xs) else fail "headTail: No list!"
-headTail _                           = fail "headTail: No list!"
+headTail e = case unfoldTAppE e of
+      [TConE n _, x, xs] -> if isCons n then return (x, xs) else fail "headTail: No list!"
+      _                  -> fail "headTail: No list!"