Fix file open flags for bcread-file.lua on Windows

The "b" flag is required on windows because it is a binary file.
Fix bytecode buffer put_number function

Now the function does use put_uleb128 and put_uleb128_33 and
discriminate correctly the 32bit integer case.
Remove spurious tonumber conversion from bytecode implementation
Make the argument of proto:here not optional

The generator always call th "here" method with an explicit target.

This change let us drop the dependency on 'lang.util' module.
Move bit.* functions into locals in bytecode implementatin

Since the bitwise operations are frequently used it seems justified to
hoist them into local variables.
Cosmetic simplification in bytecode writing's module