parts of main game loop moved to functions
self.pos, self.uDraw(), self.cast_move()

self.position => self.pos
self.uDraw() clears drawPoints and makes casting False after 6 frames
self.cast_move()  rewritten