port TEncEntropy and TEncSbac into internal Entropy and SBac classes

The Entropy class will be short-lived

--HG--
extra : rebase_source : 1461264a1d4e852f3ff98b344467dff19b33891b
entropy: remove all data members except m_entropyCoder

The three variables were only used to maintain state through recursive calls
to encodeTransform() and could be just as easily kept on the stack.

The class is now a pure reflector to the SBac class and can be merge into it
piece-wise.

--HG--
extra : rebase_source : d19100c8f806c05f3e4123f83c330177d4531944
entropy: hoist all non-trivial Entropy methods into SBac

Now Entropy only exists in entropy.h, making further cleanups possible

--HG--
extra : rebase_source : b385defc1e8e9a645af81700fe821fa04c2d1ca4
entropy: fix msvc warnings about signed/unsigned operations

--HG--
extra : rebase_source : e78c09b58eee0c54c62fb29bfbd4e599526f5862
entropy: remove default argument to encodeIntraDirModeLuma()

--HG--
extra : rebase_source : 8d76730927fd42552e94d604b51df4ed548e2b3d
entropy: reorder SBac methods for more clarity

--HG--
extra : rebase_source : a88719b684928ae3bda0d589a630afcd1a206459
entropy: remove unnecessary API differences between Entropy and SBac

These would only trip us up as we try to remove Entropy entirely

--HG--
extra : rebase_source : 5076d6ff8f29fb6a38dea46ef528335bf2b94987
remove m_entropyCoder from FrameFilter and SAO code

Lo and Behold! the SAO code suddenly makes a tad more sense when this useless
redirection is removed

--HG--
extra : rebase_source : 05aa0c4dcb25ce8bfc44c95879482df342b4d0af
sao: remove redundant braces and other nits

--HG--
extra : rebase_source : 4ccf414bc6de858996b62cc74746a8fbd47fc59e
frameencoder: do not use Entropy object to code stream headers

--HG--
extra : rebase_source : 266ce31f09688258a4dba78bf1f2f448134deff9
entropy: remove m_slice member from SBac class

The slice object was only needed in resetEntropy() and determineCabacInitIdx()
and could be passed to those two methods easily.

It was also being used in two functions to gain access to the scaling list, but
this was actually a problem for us because headers can be queuried before any
slice objects are initialized so it was better to pass in the scaling lists
directly from the top Encoder. Note this fixes a bug in scaling list support -
we were previously incapable of signaling them properly in our stream headers.

Removing this member variable lets us clean up a lot of redundant setSlice()
calls and other cruft

--HG--
extra : rebase_source : d584c0c17cc99e9db6a4399ab46b66fd120f0ac9
frameencoder: do not pass member variable to its own function

We were still passing an array of Bitstream objects to encodeSlice() even though
the array was made a member of the class so it was available via m_outStreams.
Within the function is was using both pointers, unhelfpully.

--HG--
extra : rebase_source : 6695ef2be9d21ed22ede769d48fa314f2d7c933a
frameencoder: remove most traces of the Encoder class

--HG--
extra : rebase_source : 9454fa1bd22f680a5ca2f55c729006da7307d908
remove Entropy from TEncCu, TEncSearch, and CTURow

Instead, give each an SBac pointer that they are supposed to use to code the
bitstream.

--HG--
extra : rebase_source : 6563b71c5964ac39cdfe4750044525e27e44c8d6
entropy: remove now unused Entropy class

--HG--
extra : rebase_source : 293ce26db58bcbcd2022a2a8ec5976f75f8fb2f1
entropy: make m_cabac member of SBac class a non-pointer instance

This forces a 1::1 correspondence between SBac and CABAC instances, which cleans
up a mess of confusing allocations and assignments.

This moves the CABAC class into entropy.h and it is no longer referenced outside
of this header and entropy.cpp, allowing us to further combine them.

--HG--
extra : rebase_source : dfc8d1dafb1b656ff9c5128d54f89da4d1d04418
framefilter: rename m_rdGoOnSbacCoder to m_sbacCoder - there is only one
entropy: allocate RDO coders as dual-dimensioned array

In order to make this change even less intrusive as it was going to be, I
simultaneously changed the load/store functions to take references instead of
pointers (since NULL pointers are not supported).

This further simplified setup/tear-down code and should improve data locality
ctu: rename m_sbacCoder to m_rowEntropyCoder
frameencoder: remove barely use helper function getRDGoOnSbacCoder