names cleanup
renamed ModuleParser -> ScriptParser
name cleanup in CallExpression
added Function.apply() responsible for creating CallExpression
refactored Function -> Function interface + AbstractFunction + PluginFunction
split package .function into .function.base .function.plugin
some renamings in .function.plugin package
added javadoc to PluginFunction
moved .expression.* to .function.expr.*
redesigned CallExpression -> PluginFunctionExpression, which uses PluginInvoker directly instead of PluginFunction
added DefinedFunction
ImportedFunctions.getFunction() returns null instead of throwing exception when function does not exist
redesigned ExpressionBuilder -> DefinedFunctionBuilder
added missing check-not-null checks in AbstractFunction
added missing checks in DefinedFunction and tests
fixed TestingImportedFunctions
fixed ImportedFunctionsTest
added missing checks to FunctionSignature, added tests
added TestingFunctionSignature and reused
renamed FunctionSignature -> Signature