Merge pull request #13 from quaker66/master

Fixes for issues #11 and #12
Merge pull request #14 from quaker66/master

various fixes, cleanups and indent updates
Fix problem with string escapes in lexer

Fix github issue:

https://github.com/franko/luajit-lang-toolkit/issues/15
Add string escapes test
Reorganize lexer code for string escape sequences

Improve readability by moving code for escape characters in a separate
function.

Change the code flow to be more natural and fix a couple of potential
errors with quote marks escapes.
Fix a bug due to missing FFI flag in bytecode dump

From lj_bcread.c from luajit it seems that whenever a KCDATA is used in
a function prototype or any of its child an FFI flag should be activated
in the generated bytecode.

Previously the "flags" word was always zero. Now the FFI flags is activated
whenever a KCDATA is used.
Improve generated bytecode for small unsigned integer constants
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 '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
Fix problem introduced by 2e556603 on 64bit systems

Use "unsigned ints" instead of size_t to avoid 64 bit boxed integers.