TODOs: - default values - varargs - required parameters - automated decoder: ParserSchema[CaseClass](args: RoleAppArguments): CaseClass - decoding MUST fail on * unknown parameters * unallowed free args * unary args used multiple times * missing required parameters