reimplement Range#size using double with fixing corner cases; ref #2293
allow NULL (no variable) in lvar section of mrb format; fix #2294

This fix use UINT16_MAX for NULL symbol tag, that means maximum symbol length
is not UINT16_MAX-1.
UINT16_MAX as symbol length is reserved; ref #2294