(Mostly) working multithreaded tracing implementation

Areas that need improving:

* Code cleanup
* Promote breakpoints back out of thread context
* Fix potential bug in "Next" implementation, when thread contexts
  switch
Promote breakpoints back up to process
Move variable related code to own file
Improve support for int variable evaluation