make types explicit and avoid unnecessary roundtrip
make types explicit and avoid unnecessary roundtrip

Making the types explicit ensures proper error messages in the problematic
case of the 'B.length' and 'L.length' functions changing their type. The case
for lazy bytestrings also used one 'fromIntegral' conversion too many.

fpco/fpco-cereal,triplepointfive/cereal,fpco/fpco-cereal,triplepointfive/cereal,glguy/cereal,glguy/cereal