A .NET library to write an object to a byte array and read it back