added ability to serialize/deserialize properties through functions