The issue was that by combining existing element data with posted element data, the existing items would retain their values in case no such item was posted, which is the case for unchecked checkboxes; their name/value pair will be not posted, so the original value would be retained.
This is fixed by no longer combining existing data with hosted data, but instead relying that an element editor will post all data that it is concerned with.
This change makes implementing element editors more intuitive, since they no longer rely on the initial postback from layout editor to the element editor dialog.
The ObjectStore is a simple database table that serves as a robust data transfer mechanism to share element state without the need for the host (content) to be persisted.
We could have used SessionState, but that would have added configuration requirements when hosting in a web farm.