Add interfaces and events on objects. Use this to communicate with the objects and transparently convert/marshall to network in the protocols.