Better circular dependency handling

Better circular dependency handling so property injection ALWAYS works with circular dependencies and property injected classes are always properly injected prior to being passed to the constructor of a constructor injection. Hence you can have classes that use constructor injection that can use any instances with circular dependencies passed to them as long as they are using property injection.
Yes, I would agree. At the time I wrote it I did not want to get too deep into the bowels but there should be some other mechanism to know if it is real activation or not as opposed to one from reflection. I did not know the best way to do it, so that is what I came up with at the time :)