Add viewDidChange to update zoom and center with passing tests

This is the same as #61 but ran the tests locally first. Sorry about that!