Fix infinite recursion if component has itself listed as an addon
Fix infinite recursion if component has itself listed as an addon

This particular case of a component being an addon to itself is
nonsense, but people may make that mistake and we shouldn't crash in
that case.
With this patch the cache will be resilient against such cases and
simply ignore components depending on themselves.
We could still get nasty dependency loops though, with A depending on B
depending on A. This is a bit more complicated to resolve and will be
fixed in a future commit.
Resolves: #243

ximion/appstream,ximion/appstream,ximion/appstream,ximion/appstream