api: add --pmode to enable parallel mode decision
analysis: further parallelME progress
api: add --pme to enable parallel motion estimation
analysis: support --pme for all rd levels
analysis: parallel ME can get partsize and depth from ME CU
analysis: prevent race hazard in parallel ME state variables

the inserted comment should explain the risk, which manifested in a deadlock

--HG--
extra : amend_source : 6e2d040c55fb337a4361f5b0a87e1af8c025d09f
analysis: cleanup variable names
analysis: --pme workers do not need m_origYuv in slave instance
analysis: replace prepMotionCompensation() calls in parallelInterSearch()
analysis: use slave instance for MVP eval for --pme

this avoids a race hazard with Predict::m_immedVals
TComDataCU: make most get methods const, remove some trivial access methods
analysis: remove default argument for compressInterCU_rd5_6
param: show when pmode and pme are enabled
analysis: do not pass member vars to checkMerge2Nx2N_rd0_4 as pointer references

--HG--
extra : amend_source : b56bde80a910ede4ac496e19a9815757d27202bf
analysis: measure best pmode intra RD cost in worker thread

it required adding storage for the best intra recon and entropy state
includes prep work for supporting --pmode with --rdlevel > 4

--HG--
extra : amend_source : ef8246ce4d00124ee0510b3c45f63b34fca17797
analysis: cleanups

--HG--
extra : amend_source : 33b7e0b005dfb334b76d2ea81b631c69cc786eea
analysis: add a hack to try and match --pmode with --no-pmode
analysis: use enums to enumerate prediction buffers

value 4 was never used, so this reduces the buffer count by one
analysis: encodeIntraInInter() must write directly to given cabac context

writing to m_rdEntropyCoders[depth][CI_TEMP_BEST] was not thread save since the
slave thread is using the same m_rdEntropyCoders objects as the master thread
encoder: prevent broken combinations of options

with --no-wpp; something in the slave state is not being initialized correctly
causing crashes in motion estimation