initial working version, zooming and scrolling implemented