What's the purpose of MarshalByRefObject? - C#