def get_installed_pypackages():
    return {p.project_name.lower(): p for p in pkg_resources.working_set}
def __init__(self):
        super(TransactionStates, self).__init__()
        self._states = defaultdict(TransactionState)