Improve terminology and share set chan

@flahertyb @barnabyc @ermanc @AdamEdgett @tlunter 

After a good brainstorming session yesterday we came up with a few changes. I think this is a much improved terminology. It now uses just 1 channel to update the state and the cursor which is a huge improvement.
```
  while(cursor = yield take(cursorChan)) {
    // update the component cursor prop everytime it changes
    component.setProps({ cursor: cursor });
  }
```

This is the `mainCursorCh` that is being interacted with to update the component, once data has been persisted.