'Split ISUPPORT parameter arguments.
Values can optionally be processed by C{valueProcessor}.
For example::
>>> ServerSupportedFeatures._splitParamArgs([\'A:1\', \'B:2\'])
((\'A\', \'1\'), (\'B\', \'2\'))
@type params: C{iterable} of C{str}
@type valueProcessor: C{callable} taking {str}
@param valueProcessor: Callable to process argument values, or L{None}
to perform no processing
@rtype: C{list} of C{(str, object)}
@return: Sequence of C{(name, processedValue)}'

@classmethod
def _splitParamArgs(cls, params, valueProcessor=None):

    if (valueProcessor is None):
        valueProcessor = (lambda x: x)
    def _parse():
        for param in params:
            if (':' not in param):
                param += ':'
            (a, b) = param.split(':', 1)
            (yield (a, valueProcessor(b)))
    return list(_parse())
