Add (-) function for Fin
Change to infix form
Add splitAt function for List
Add name of arguments in type declaration for proper documentation
Add semantic highlighting info for metavariables

This will enable the appropriate fonts to be used in IDEs such as idris-mode
Provide IDESlave output with docs and type

Now, IDESlave provides the docstring overview and type of names that it
decorates. The module Idris.Output was introduced to remove some cyclic
dependency problems.
Fix deadlock in RTS when using allocation in native code

When marking a section of memory for allocation using requireAlloc, any
requests to the allocate function (which would generally happen from
native code, such as the SDL library) would try and acquire the same
allocation lock.

The fix makes this a reentrant lock.
Merge pull request #1009 from jedesah/list_splitAt

Add splitAt function for List
Merge pull request #1012 from david-christiansen/issue/949

Add semantic highlighting info for metavariables
Merge pull request #1014 from david-christiansen/doc-type-ideslave

Show docs and types in IDESlave
Merge pull request #1016 from SimonJF/rts-deadlock-fix

Fix deadlock in RTS when using allocation in native code
Return the name of the temp file from :exec in IDESLave

This is to allow IDESlave clients to execute it as they wish
Add CodegenInfo structure, give CGs uniform types

All code generators now have type CodegenInfo -> IO (), with access to
all IRs. Later, we'll be able to register new CGs easily if they all
have the same type.
Fix compile error

Oops. That's what happens when I don't test properly...
Coverage checker fix

The patterns generated for the 'impossible' cases were not done
correctly in the case of ambiguous zero argument constructors, where it
generated a 'match anything' pattern. This is bad news for things which
use [] because that just became 'match anything'!

Also fixed a couple of definitions which relied on this bug, and added a
comment or two.
Fix parsing of $

Needs to flatten applications so that elaboration does the right thing.
Fixes #1020
Merge pull request #1018 from david-christiansen/ideslave-exec

Return the name of the temp file from :exec in IDESLave
Added documentation for the effectful file operations.
Add splitAt to Vect
Ensure modules are loaded independently

Fixes #1021
This also exposed a couple of bugs in the library, in which things were
being used but not imported, but we were getting away with it because of
the previous problem.

This relies on a bit of a hack to preserve missing cases, type inference
information and interactive editing data, which is not saved in ibcs,
but should be.