Don't use Curses to look for console width in IDESlave

Now, setting automatic width in IDESlave mode is equivalent to setting
infinite width.
Add with expressions to IBC files

This prevents the following error:

idris: src/Idris/IBC.hs:(1546,13)-(1652,44): Non-exhaustive patterns in case
Merge pull request #852 from david-christiansen/ideslave-really-no-curses

Don't use Curses to look for console width in IDESlave + properly serialize and deserialize the new with-expressions  from IBCs
Merge pull request #854 from raichoo/javascript

Javascript
Added Network.Sockets

Taken from Simon Fowler's IdrisNet2 package. This is a thin wrapper over
the C sockets library.
Add toUpper and toLower functions for String
Normalise provider types before checking

This ensures, among other things, that:
 * Namespaces don't get in the way
 * Type synonyms get expanded
Add idris_net to data files
Merge pull request #858 from david-christiansen/string-upper-csae

Add toUpper and toLower functions for String
Merge pull request #860 from david-christiansen/provider-type-normalize

Normalise provider types before checking
Use 'with' to disambiguate defaults Envs
javascript: init local constructors
javascript: eval constructors during compiletime
javascript: collapse some more tailcalls
javascript: collapse continuations