3 ideas:

a) Defines `MessageBufferInput.next()` to throw `EOFException` if there're no more buffers. Then `Unpacker` needs to do nothing.
b) `MessageBufferInput.next()` returns null if there're no more buffers. Unpacker throws `EOFException` if more data is necessary to unpack a value.
c) `MessageBufferInput.next()` returns null if there're no more buffers. Unpacker throws `MessageDataInsufficientException` (which extends `MessagePackException`) if more data is necessary to unpack a value.

My suggestion is...idea c). How do you think, @komamitsu ?