heavy changes to the ioc container to handle issues like circular references, at-once initialization, and properly implemented component lifetimes.  many other things