GUAC-675: Add rect struct. Migrate surface to new rect struct.
GUAC-675: Optimize output of rect.
GUAC-675: Optimize copy.
GUAC-675: Source coordinates must be updated along with rect.