Introduced ball movement and simple deflections

-ball.slope only used for convenience
-ball.direction removed
-print_gamestate() not up to date
-previous_x_coord and previous_y_coord partially implemented, but don't do anything yet
-bug where ball will constantly check if it is behind the paddle and will bounce if it traces its trajectory back to where the paddle currently is