Revert Haskell.bnf to 05bf9203769abb2be9d9273c43ec109b4ad490bf and merge the important bugfixes after that point.