Improve editor collaboration mode

This PR will fix #255 and improve collaboration UX.

**Not yet ready to be merged**, Todo:

- [x] Don't refresh all ace document for each patch
- [ ] Use CRC instead of MD5
- [ ] Check document state (save, ...)
- [ ] Add label on cursor (with username)