General Gesture class refactoring