Puncturing, shiftin/out, and CRC in C++
Added interleaver in C++