Resolve default Integer as late as possible

i.e. right at the end, or just after a 'let' with no type annotation to
resolve any defaults in the binding
Update docs for equality type

Fixes #1393
Merge pull request #1405 from david-christiansen/master

Update docs for equality type
Fix a bug in qsort

Try `qsort [3,3]`. Under the old code, you'd get `[3,3,3]` out.
Fixed bug regarding insertion in SortedMap.
Fixes idris-lang/Idris-dev#1394. Solution based on the diagnosis in @sebzim4500s comment.
Merge pull request #1408 from ahmadsalim/bug/sortedmap

Fixed bug regarding insertion in SortedMap.
Merge pull request #1406 from jthemphill/fix-qsort

Fix a bug in qsort
Add for and for_
Added an :unlet/:undefine command.

  Idris> :let nat : Nat; nat = 6; hands = S nat; feet = S hands
  Idris> :undefine
  Idris> hands -- error

  Alternately:
  Idris> :let nat : Nat; nat = 6; hands = S nat; feet = S hands
  Idris> :undefine nat feet
  Idris> hands
  7
  Idris> feet -- error
Using ASTUtils instead of writing things out the long way
Merge pull request #1409 from Melvar/for

Add for and for_
Add Uninhabited instance for Any p []

This lets users use `absurd` to discharge proof obligations about Any.
rename writeLine to writeString, add writeLine
List packages in Travis
Put an upper bound on Trifecta
Make Idris build with the latest hackage

This makes Idris work with parsers >= 0.12 and trifecta >=1.4.3.
Merge pull request #1417 from david-christiansen/travis-list-packages

List packages in Travis and fix compilation against latest Hackage
Merge pull request #1413 from david-christiansen/master

Add Uninhabited instance for Any p []
Allows parsing operators that start with “<==”

Fixes #1321
Merge pull request #1421 from Melvar/fix-matchapp-op

Allows parsing operators that start with “<==”