Allow class names to be infix

Use case:

    class (:<:) (f : Type -> Type) (g : Type -> Type) where
      isSubFun : SubFunctor f g
Fix error in .cabal
Add input for interactive test
Make prover respect showimplicits from IState
Render using console width
Use the pprint library to insert line breaks

The "Sized" class is not deleted because it is useful in other contexts,
such as eliding parts of error messages.

The "show" instances assume an absurdly wide monitor so as to not break
interactive editing.
Use pretty-printer to display :t for metavars
Update .gitignore for new tests structure
Added "with" expressions to CHANGELOG
Merge pull request #821 from david-christiansen/infix-class-names

Allow class names to be infix
Merge pull request #823 from raichoo/javascript

Javascript
Merge pull request #827 from david-christiansen/semantic-pprint

Pretty-printer updates
Merge pull request #828 from david-christiansen/gitignore

Update .gitignore for new tests structure
Merge pull request #830 from david-christiansen/changlog-with-better

Added "with" expressions to CHANGELOG
Change 'run' in neweffects to add defaults

In most cases, this is the easiest thing to do, creating a default
resource value for the resource type using the 'Effect.Default' type
class. Where it's not possible (or undesirable) there is a runInit
(correspondingly runPureInit) function which allows explicit resource
lists.
Merge branch 'master' of github.com:idris-lang/Idris-dev
Add test case for simple Buffer functionality
Add Data.Buffer module

Implements Buffer, allocate, copy, append*, and peek* in terms of as-yet
non-existent (unsafe) primitives.
Add Buffer type and primitives to the core
Replace Fin ( n + 1 ), which doesn't reduce, with Fin ( S n )