Some formatting and rearrange the BPTC code to be more structured like the others
Move bitstream to FasTC base lib
Split calculation of compression parameters from packing them.
Merge from master
Initial ASTC decoder commit
Merge branch 'master' into ModularizeBPTC
Merge branch 'ModularizeBPTC' into DecompressASTC
Add initial block mode decoding
Add color endpoint mode decoding
Add additional error check.
Add a utility Bits class to help work with bit ranges in integers. Ideally we should add a bunch of other classical bitwise operations here
More work on ASTC decode.

Fixed the notion that the CEM data was right after the first six bits
after the partition mode. It's actually right before the texel weight
data. Still not sure whether or not the texel weights are read in
the opposite order from the color data...

Also, added some preliminary integer sequence decoding. This will need
to be tested before we actually figure out if we did it correctly or not...
Add bit counter to utils
Break out the integer sequence encoding into its own module.
Add ASTCEncoder tests

Start with small tests to make sure that integer sequence encoding is working the way
that it needs to. Ideally there will be many more tests here, but for now we are trying
to get ASTC decompression working and testing is not a priority.
Add generatl bit replication function
Refactor to FasTC::Replicate where appropriate
Add texel unquantization
Add 4-value pixel constructor
Add clamping to our pixels