javascript: added foldJS
Automatically detect console width

This can now be overridden with the :consolewidth command at the REPL or
in an init script.
Correctly pretty-print no-argument Nil

Previously, when the Nil constructor took no arguments (as was the case
with HVect), it was not shown in sugared syntax in the pretty-printer.

Fixes #820.
javascript: refactor inliner
Add --repl [package] command line option

Checks the package, then starts a REPL using the main module listed in
the package description. If no main module is given, the REPL is not
started.

(This means library packages will need a main module listed --- it has
no other effect that to be the 'home' file for the REPL).
Added Functor, Applicative, and Monad Provider instances
javascript: make use of inliner
Merge pull request #834 from david-christiansen/semantic-pprint

Automatically detect console width + fix pretty-printing of no-argument Nil constructors
javascript: inline more constructors
javascript: inline simple functions
javascript: remove redundant continuations
javascript: JSNull is a constant
javascript: inline more functions
javascript: inline more functions
Merge pull request #836 from trillioneyes/monad-providers

Added Functor, Applicative, and Monad Provider instances
Fix display of CantConvert
Better emulation of C in executor wrt file handles

Now, we return a null pointer on failure to open a file, and we allow
isNull to check handles as well as pointers. For handles, it returns true.
 (Temporarily) remove the remaining typecase checks.

6e1cac72fd0660cd26beb6bb1f7ed5a1b65ec9bd temporarily disables the
typecase test, but some checks remain and continue to cause undesired
behaviour. This patch temporarily disables the remaining checks.
Merge pull request #837 from raichoo/javascript

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

Fix display of CantConvert