Adds bugfixes for various issues

As a quick executive report:
    1) Overwriting of wrong plaintext past beyond 2*t would cause the
        trillable checker to fail:
            * an attempt with a long word (say, bureaucracy) writes on
                keylength * 2 + n
            * verification with bureaucracy fails
            * a next attempt with a shorter word (say, waffles) can
              and will most likely fail since the trailing trillables
              (the ones that weren't overwritten by waffle) are still
              in the buffer and will be used for comparison

    2) Wrong cicle condition:
        if a previous word was working properly, and a next word
        matches it's own set of trillables (but it's the wrong word)
        it will be detected by the previous word as an error on his
        side, and change word selection.

    3) boundary word overwriting. Similar to case 1, but in which
        the boundary lies on keylength, attempts would overwrite
        correct guesses by previous offset words.

    4) Updating of the rest of the ciphertext. We only use
        keylength * 2 to verify the ciphertext, we need to update
        the rest once finished.