Merge pull request #794 from david-christiansen/error-reflection

Error reflection for specific function arguments
Add 'without' command to test script

Allows all but a subset of tests to be run, so it easier to omit
specific tests for unsupported features in a particular backend, rather
than having to explicitly allow all of them.
Run 'diff' on test failure
Make sure package parsing reaches end of file
Allow class names to be infix

Use case:

    class (:<:) (f : Type -> Type) (g : Type -> Type) where
      isSubFun : SubFunctor f g
Add test040/B/*.idr to idris.cabal
Remove LLVM test with unimplemented primitive
(Temporary!) Turn off typecase test

This needs to be done properly, and currently isn't, which is breaking
more things than it fixes. Will revisit ASAP...
Fix Fin literals and add test

This was actually due to a preview fix for a bug which we were working
around in Prelude.Fin! But the tests didn't catch the problem, and so
now they will in future.
Categorise tests
Fix cabal with new test files
Missed a couple more files :)
javascript: allow more inlining
javascript: inline some missed cases
javascript: remove jsobject
javascript: better error representation
javascript: whitespace
javascript: optimize branches
Fix error in .cabal
Add input for interactive test