cpp: Split VariantPixelBuffer into separate header

Tests were almost hitting the 64k windows symbol limit.