Consume the arguments we support.  The args are modified inline.
        The return value is the number of args eaten.

def consume(self, args):
        """ Consume the arguments we support.  The args are modified inline.
        The return value is the number of args eaten. """
        consumable = args[:self.max_args]
        self.consumed = len(consumable)
        del args[:self.consumed]
        return self.consumed