Refactor spectator-specific events into SpectatorListener
Add sensible static from*() API for a few enums
Implement basic player-cycling (untested). Closes #103

* Use feather to cycle via item use (L = backward, R = forward)
* Adds "/autoref cycle [-n] [-p]", no option defaults to forward