Ascent control

Implemented ascent control and wall sliding.
Refactored most of player class.
Sticky walls and collision refactoring will be done by next commit.