Issue #44: Fix the zoom behaviour with mouse wheel.
Organize code.
Merge with master.

- Fixing style and behaiviours.