Modified various components to allow for serializing and deserializing.
(De)serialize should be working.