workaround to ff module compilation restrictions

ff only allows you to compile a module once in asm.js, says this will change in the future but for now it asks devs use a metaprogramming workaround. using something of the sort.

This commit also includes a small bugfix to range