Resolved #51: ditch `Player.getX` and `Player.getY` methods.
Resolved #52: moved regen method into health component.
Part of #49: refactor to remove Player MoveComponent
Created SpeedComponent, which deals with speed; added first
inter-component dependencies (which is why `Component.parent` is now
protected instead of private).
Resolved #26: experience points are proportional to level ratio.