@classmethod
def _split_fields(cls, **kwargs):
    """
        Splits off field entries from the other kwargs returning a tuple of dictionaries (fields, non_fields).  Useful for forwarding
        parameters as part of a different library call
        """
    fields = dict()
    non_fields = kwargs
    for attr_name, field in cls._find_fields():
        if attr_name in non_fields:
            fields[attr_name] = non_fields.pop(attr_name)
    return fields, non_fields
