Shoehorn parent class to player events.
Obey naming conventions.
Factor out socket handling code.