added Argument.number
result of Argument.toPaddedString() contains also Argument.number
improved AmbiguousNamelesArgError to provide more error details
added Param.isRequired()
added ParamsPool.availableRequiredParams()
added @Required to mark require params, changed PluginSignatureFactory to handle this annotation
moved AmbiguousNamelessArgsError.paramsToList() -> Param.paramsToString()
ArgumentNodesCreator checks that all required arguments are assigned
reused @Required annotation in Smooth function implementations