Moved 'SerializableOptional' from its demo into this library and implemented tests.