Add zoom message.

Rebased and merged for huwshimi

* Improved tests.
* Refactored for testability. Updated messages. Completed tests.
* Fixed lint.
* Changes from review.
* Added detach for resize event.
* Fixed typo.