1. In a computing environment, a method for managing relationships of objects using references for which inverses are managed, the method comprising: accessing a first object, wherein the first object is an instance of a first type that specializes a base class, the base class including functionality for linking inverse object references, wherein the first object comprises one or more instance fields, the one or more instance fields holding objects including a first instance field object which is an object of a type which manages a single reference and its inverse from any object of the base class to some object of the base class, wherein the first instance field object comprises a value field holding a single pointer to one other object, itself or null; receiving user input setting the value field in the first instance field object to be a second object, wherein the second object is an instance of a second type, the second type specializing the base class; accessing the second object, wherein the second object comprises one or more instance fields, the one or more instance fields holding objects, the one or more instance field objects including a second instance field object which is an object of a type which manages a single reference from any object of the base class to another object of the base class, wherein the second instance field object comprises a value field holding a single pointer to one other object, itself or null; automatically, without user input, and as a result of setting the value field in the first instance field object to be a second object, setting the value field in the second instance field object to be the first object; and thereby linking the first instance field object to the second instance field object as inverses of one another.