A simple complexly-typed Java library for serialization/deserialization