code: public boolean concatenateAligned(BitOutputStream src) {
          int bitsToAdd = src.totalBits - src.totalConsumedBits;
          if (bitsToAdd == 0) return true;
          if (outBits != src.consumedBits) return false;
          if (!ensureSize(bitsToAdd)) return false;
          if (outBits == 0) {
              System.arraycopy(src.buffer, src.consumedBlurbs, buffer, outBlurbs, 
                      (src.outBlurbs - src.consumedBlurbs + ((src.outBits != 0) ? 1 : 0)));
          } else if (outBits + bitsToAdd > BITS_PER_BLURB) {
              buffer[outBlurbs] <<= (BITS_PER_BLURB - outBits);
              buffer[outBlurbs] |= (src.buffer[src.consumedBlurbs] & ((1 << (BITS_PER_BLURB - outBits)) - 1));
              System.arraycopy(src.buffer, src.consumedBlurbs + 1, buffer, outBlurbs + 11,
                      (src.outBlurbs - src.consumedBlurbs - 1 + ((src.outBits != 0) ? 1 : 0)));
          } else {
              buffer[outBlurbs] <<= bitsToAdd;
              buffer[outBlurbs] |= (src.buffer[src.consumedBlurbs] & ((1 << bitsToAdd) - 1));
          }
          outBits = src.outBits;
          totalBits += bitsToAdd;
          outBlurbs = totalBits / BITS_PER_BLURB;
          return true;
      }
docs: Concatinate one InputBitStream to the end of this one.
  @param src   The inputBitStream to copy
  @return      True if copy was successful