I got it compile, load and use generated classes without touching the disk.
Strangely I found that creating instances of this generated class was about 20x faster than creating object using newInstance(). Why is this strange you dont ask? The reason I found this strange is that Java generates stub classes to perform tasks like newInstance() for you, so I would have expected it to be much faster.
Another problem occured to be;
Anyway I changed the library to optionally save the generated class to disk (in a source directory), compile and load it from there. Interestingly I was able to add breakpoints and see new fields and variables of my generated classes. The debugger found the source which had been written to disk as if it had been then when the program started.