added Params.filterRequiredParams()/filterOptionalParams()
added Params.paramsToNames()
refactored ParamToArgMapper
changed Function.params() and Signature.params() to return list of Params instead of map
removed STypes.superTypesOf(), used STypes.canConvert() instead
removed Function.signature()