'First iterates over keys from the parent dict (if the aliased keys are
present in the parent), followed by any keys in the local store.'

def __iter__(self):

    for (key, alias) in six.iteritems(self._aliases):
        if (alias in self._parent):
            (yield key)
    for key in self._store:
        (yield key)
