[FEATURE] Allow repeat-times to be 0 for the output to repeat forever

Implementing MOH would be easier if it were possible to specify that an output should be repeated forever. -1 seems like a conventional value for the purpose but this would require a new type to be defined. It would not make sense to repeat an output 0 times (and 1 is the default) so a value of 0 and a type of nonNegativeInteger seems to make sense.