test: add unit test of IntegerCoder

- Test encoding compliance with rsync for a small but wide range of
  suitable values.
- Test encoding of mentioned values is decodable again to its original
  value.
- Add ReadableByteBuffer, which is a wrapper of ByteBuffer that
  implements Readable.
Fix IntegerCoder ArrayIndexOutOfBoundException

IntegerCoderTest fails with ArrayIndexOutOfBoundException when
decoding negative numbers and very large numbers. This is due to
having a too small (off by one) array when decoding.