def parse_kv_pair(pair):
    """
    Parse a single key/value pair separated by = and return the key
    and value components. Assumes that the key component does not
    include = which is valid for CIM names.

    If the value component is empty, returns value None
    """
    name, value = pair.partition("=")[::2]

    # if value has nothing in it, return None.
    if not value:
        value = None

    return name, value