Revised player classes

Completely rewrote the player classes, support for new actions is much smoother now.