Fixed VarInt sizeOf bug for the 0xffffffff number and added tests for VarInt edge cases.

The VarInt.sizeOf() incorrectly returned 9 instead of 5
for the 4294967295 (0xffffffff) number.

See https://en.bitcoin.it/wiki/Protocol_specification#Variable_length_integer