renamed FullyQualifiedName -> QualifiedName
removed TODO
done TODO from UnknownParamNameProblem class
PluginFactory forbids injecting FileSystem into non builtin plugins
improved exception message in IllegalConstructorParamException
refactored QualifiedName
refactored DefinedFunctionBuilder
added Module
added ModuleParser
redesigned ProblemsListener hierarchy/implementations
redesigned ExpressionNode -> StringNode
refactored ArgumentListBuilder, DefinedFunctionBuilder so they require less injections
renamed ArgumentListBuilder -> ArgumentNodesCreator
refactored ModuleParser/ScriptParser to report Problem instead of throwing IOException
fixed ImportedFunctionsProvider
fixed Problem.toString() to correctly handle null SourceLocation
fixed DefinedFunctionBuilder
added Module.availableNames()