check for correct cabal version during parsing
I throw a parse error if this package has the wrong cabal version. This is so that the user can get this error before getting an error for eg. an unknown field. Also check it in the sanity checker. I just hard-code the cabal version in the source, it would be nicer if we got it from the .cabal file. cabal could include the version in the cpp flags, but cabal's setup file needs to build without cabal, so that wouldn't actually work for us ahem.