merge karl into master

With:
1. point
2.joystick
3.monster (unfinished)