Some documentation and some refactoring.
resolves #1
In addition, zooming is a little faster. May this should be configurable somewhere?