Preliminary 'js' module for interfacing with host javascript environment.
Add an optional "nodebug" include dir that overrides debugging macros.

This is useful for production builds where the debug info (e.g. rpython
tracebacks) is just wasted space.
Merge branch 'master' into rfk/rjs-module
Some improvements to the js module:

  * automatic conversion of primitive python values
  * direct access to global 'this' context
  * basic bound-method behaviour on attribute lookup
Refactor 'js' module to use classes for different js object types.
Begin preparation for testing of 'js' module.
Fix some typing typos
Attempt to auto-convert python functions into js callbacks.
Allow js.Value(h) to create a value from a raw integer handle.
Merge branch 'master' into rfk/rjs-module
Don't require 'js' shell for running the tests