Fixed a 1/1.67m bug where all three ciphertexts' blocks started with the same byte
Optimized the code that determines the offset and prefix
Code cleanup and comments
More cleanup and commenting