bring over the new SurfaceContext contract
hook up zooming