Updating center and bounds within same $apply

Currently there are two 'moveend' callbacks being triggered, one updates the center and the other updates the bounds. As they are strictly related, when you do bind both center and bounds and update them in separate $apply cycles a weird cycle of updates happens and the end state of center is not always correct.

The issue can be reproduced by setting center and bounds in a map, dragging the map a couple times and dropping it while it is still 'in motion'. Sometimes the center bounces back to the point before it ended in the move animation.