framedata: fix license header
frame: move rate control data to FrameData, cleanup variable names
framedata: change 'structure of arrays' to 'array of structures' for RC stats

This uses fewer mallocs, fewer memsets, and generally better data locality. It
doesn't hurt that the code is more readable.
rc: use curEncData.m_numCUsInFrame

Note that the CU count was wrongly calculated before as height * height,
broken by me a couple days ago in 14d5345e257a
rc: fix error message
analysis: handle no-valid-merge more cleanly, simplify compressInterCU_rd0_4

checkMerge2Nx2N_rd0_4() will set md.bestMode if any of them were valid, else it
will be left NULL. Fixes some rare decoder asserts when no valid modes is coded
frameencoder: handle non-present CUs correctly when collecting stats
analysis: add emergency intra check for --pmode

if all other choices somehow fail, we should always be able to code intra