I should comment on existing uses.  

- One is for MailSlice and SliceBridgeProxy.  Setters are used to propagate atTop/atBottom setting through from the MailSlice to the SliceBridgeProxy it is paired with.

There's some evolutionary history here that is now moot.  Originally I think a main idea was that I wanted FolderStorage to be able to poke/know about the MailSlice, but have no idea about the SliceBridgeProxy.  I also only wanted the state stored in one spot.  I think at some point MailSlice just internalized all that logic and the setters became more about guards to avoid null-dereferences or null-dereference boilerplate existing in multiple places.  (Or maybe it was only about the null-deref guard as a hack?)  I think the multiple places may have been reduced too.  (Sync had a lot more code-paths going on previously.)

So those setters are not particularly important now; I'd be fine if someone wanted to remove them.

- The other is for CompositeAccount to do funky stuff to make sure both the composite account and its constituent receive/send pieces are fully in-sync, etc.  I think this case makes a lot of sense.