refactored web REPL and added colour
display negative numbers with '~' instead of '-'
share context between commands in REPL