Made MUCH better debug interface

Made a closure that will hold a lot of data and perform many operations,
but be as self-contained as possible - this is far better than having
everything spread throughout the other classes.