1. A method for managing object relationships comprising: using a processor to instantiate a first object having a relationship with a second object; and using the processor to create a fault object to stand in place of said second object with respect to said relationship; wherein the fault object comprises at least one attribute of the second object, such that the fault object responds to a message requesting the value of the at least one attribute without the fault object transforming into the second object, wherein the fault object includes an instance variable in which a pointer to a data value of the second object is stored and the fault object is configured to transform itself into the second object in the event a message that requires retrieval of the data value of the second object is received.