First pass on adding support for multiple viewports