I'm not really sure of the design here. Mainly I want to make sure I understand this as when we write new code that we follow the right patterns.

In short, is save() on the entity the same as calling modulestore.update_item()?