Created a debug cache

Has support to keep track of nested classes as they are loaded.
With unit tests.
Re: #1001001
Integrated the debug cache to the debugger

It is used in for breakpoints and step-over.
Fixes the first part of the ticket: nested classes.
Re #1001001
Updated according to the review comments

Tweaked the API to accept any type, and always work on the outer type.
Improved a filter in step over.
Merge pull request #285 from skyluc/issue/stepping-performances-1001001

debugger performance improvement (part 1)
Reverts moving waitUntil

Reverts also the logic change