Backed out changeset: fa2f1aa1456e

This commit allocated the harness instances on the heap, thus
no longer respecting __declspec(align) directives for the member
fields. We could probably circumvent this by overloading operator new with
aligned_malloc, but I'm not sure this is good practice.
predict: combine redundant logic paths in predInterBi()

removes weightedPredictionBi(), which is no longer called
predict: use faster unidir prediction for B frames when weighting not enabled
predict: streamline getWpScaling()
predict: remove list argument from motionCompensation(), always REF_PIC_LIST_X
predict: remove checkIdenticalMotion()

We will not insert the same reference picture into L1 and L0 at the same time,
so this check is utterly redundant.
refine deblocking filter
blockcopy_pp_32x8: avx asm code, improved 281.20 cycles -> 165.47
blockcopy_pp_32x16: avx asm code, improved 477.74 cycles -> 309.99
blockcopy_pp_32x24: avx asm code, improved 621.84 cycles -> 371.94
bloccopy_pp avx asm code: 32x32, 32x48, 32x64 improved by 803.69 -> 514.90, 1126.36 -> 655.24, 1454.09 -> 835.76 cycles
primitives: remove unused block copy primitives
cmake: remove blockcopy-sse3.cpp
vec: remove idct8, we have SSSE3 assembly for it
vec: make a note for why we keep some of the remaining vector routines