meta-wayland-surface: use MetaWaylandBufferViewport struct
Like weston, bundle all values that describe the relationship between surface coordinates to buffer coordinates into one struct.
This is preparation work for wp_viewporter as well as transformations.
requires !141 (merged) and !148 (merged) and is required for #132 (closed) / !121 (closed)