Various improvements

   - onDone and onPaused are now passed as callbacks to the constructor
   - Better stack management:
       - Builtin function calls are noted on the stack.
       - Pop makes it harder to pop the wrong state.
   - Current node is stored so the caller can see where the program is.
   - Recognise breakpoint statements
Improvements:
	- Better CPU use - no longer poll for the 'paused' property to
		turn false.
	- Evaluation of watch statements.
	- Error reporting.
	- Position reporting.
	- MOD OF operator.
	- Allow EOL to be an argument list terminator.