Refactored component.serialize to base keys off defaults/properties in the prototype. Added keys function that returns the serializable keys.