Add ability to wrap generator with try-finally block

var g = (function () {
	try { yield "first"; }
	finally { print("finally"); }
})();
g.next();
g.next();
Create different IRFactory for different evaluators.
generators compilation WIP
Move Extensions::Get extension methods to Utils and rename to GetValueOrDefault

Conflicts:
	src/Rhino.Tools.Debugger/SwingGui.cs
Fix indents

Conflicts:
	src/Rhino.Tools.Debugger/UI/JTextArea.cs
Remove redundant Convert.ToInt32

Conflicts:
	src/Rhino.Tools.Debugger/VariableModel.cs
Replace Extensions.Remove(int) with RemoveAt
Debugger App