Feature/motion gesture

The feature is not complete yet, but it should be compilable. Please check before merging.