Overlay application support
Basic overlay apps functionality implemented
Overlays in OpenXR are submitted in xrEndFrame, so determining when begin/end frame is tricky
Every overlay update triggers xrBeginFrame, GetPose flushes frame if it running
Tested with godot_openvr plugin and early WlxOverlay versions.
Implement overlay transformation/intersection math.
Free transform matrix cannot be converted to XrPosef directly, OpenXR use different structure for scale, so it use texture bounds to handle inveted basis direction in case of negative scale, size for scale and rebuilds quaternion from euler angles to prevent strange effects.