ByteVector::toUInt() takes offset and length

(Revised version of #153)

Added the overloads of ```ByteVector::toUint()```, ```toShort()``` and so forth that takes an offset and length.

I found that every call to the functions was accompanied by a call to mid(). 
Since my patch #122, ```ByteVector::mid()``` doesn't entail an actual memory copy. But that feature may slow down very small-sized ```mid()``` operations instead. This patch intends to get rid of such operations.