Move Serializable macros implementation to class
Fix Serializable trait definition
Rename `getObject` with `read` for simplicity
Move getter generation to separate function
Move `getSeq` logic to macro expansion
Implement macro expansion for `Serializable.put`