Whitespace only in deSugar/MatchLit.lhs
Add a warning for overflowing literals; fixes #7895
Add NegativeLiterals extension

I'd been meaning to do this for some time, but finally got around to it
due to the overflowing literals warning. With that enabled, we were
getting a warning for
    -128 :: Int8
as that is parsed as
    negate (fromInteger 128)
which just happens to do the right thing, as
    negate (fromInteger 128) = negate (-128) = -128
Document the Negative Literals extension
Add -XNegativeLiterals to the flag list
Add a warning for empty enumerations; fixes #7881

We now give a warning about enumerations like [5 .. 3] :: Int8.
Fix Trac #8020.

The solution is to use a different notion of apartness. See
http://research.microsoft.com/en-us/um/people/simonpj/papers/ext-f/axioms-extended.pdf
for the gory details. Some comments are also in Notes [Compatibility]
and [Apartness] in FamInstEnv.
Merge branch 'master' into roles

Conflicts:
	compiler/parser/Lexer.x
	docs/core-spec/core-spec.pdf