fix 7bf4092533: Xtend type guards do not work with parametrized class
add Tuple and Pair util classes
cache scopes

In MatrixScopeProvider, cache the generated scopes, indexed by
the context (and reference type) they are created for.
add common super class for scopes, with support for caching
add jsr305 to classpath for Eclipse launch
switch to HashMap instead of Hashtable (handles null better)
runtime module: move factory configurations in separate methods

This allows inheriting module to override individual
factory configurations.
global scope: simplify ImportManager handling

Inject the ImportManagerFactory in the constructor.
Then create the ImportManager instantly. Remove the
helper method.
InterpreterImpl: use XText mechanism for reference resolution
ImportManager: make importURI protected so it can be overridden
add REPL project
REPL: flush streams to ensure order of output
provide @exit() proc in REPL