[WIP] Add ws region

This first few commits will disappear once #279 is merged

Okay, so far I got this:

- [x] Send/Leave events
- [x] Cursor Updating
- [ ] Fix hotspot offsets being... off
This seems to get a hell of a function, can you refactor a bit (or maybe add some blank lines for separation of logical parts)?