Also, if there are setters anywhere, they should call a reset method that clears memoization of @to_hash and @to_yaml