Factor out LLVM backend

The LLVM backend is now available as a seperate project on github.
Adapt travis testing
Only build llvm backend if testing llvm
Make sure we use the official version of idris-llvm for testing
Introduce class Negatable
Rename the Negatable class to Neg
Make unary "-" use the Neg typeclass
Add support for the primitive prim__negFloat : Float -> Float
Rename float negation primitive for more uniformity
Add test for new float primitive prim__negFloat
Introduce class Negatable
Rename the Negatable class to Neg
Make unary "-" use the Neg typeclass
Add support for the primitive prim__negFloat : Float -> Float
Rename float negation primitive for more uniformity
Add test for new float primitive prim__negFloat
Remove commented-out code.
CHANGELOG and doc updates for unary negation
Merge branch 'markuspf-negate'
Remove papers directory

It doesn't really belong here especially since this is a repository
owned by a community rather than an individual, and it's a single author
paper (and it's now published anyway so any history isn't really
relevant any more).