Rewrote device handling to be RAII and write to soypixels
Detect device init failure
Added GetFrame to pull last frame from device
Default to BGRA if video data is 4 component (to match built in macbook camera)