Generate valid code for subtraction of pointers
Handle casts of integer literals to pointer types by producing a special pointer literal
Fix untranslatable nodes generating an extra semicolon
Use WeakMap (if available) to cache a single MemoryRange instance for a given ArrayBuffer.
Handle pointer subtraction involving different MemoryRange instances as long as they share the same underlying buffer.
MemoryRange now caches views for individual element types to make repeated casts cheaper.