Add zoom message.
Improved tests.
Refactored for testability. Updated messages. Completed tests.
Fixed lint.
Changes from review.
Added detach for resize event.
Fixed typo.