Fixes throw error line

Previously was just throwing a string error, now is properly(?) throwing
`new Error()`
Aliass inStr to inArr for itterating strings

Since itterating a string and an array with `inArr` is identical, this
commit adds a conditional `(?:inArr|inStr)` `to pickup char inStr foo`
adds word boundries to inArr and inStr
Removes old arrow function tests

Dropping arrow functions for the current do block syntax. This commit
cleans up the remaining tests
Fixes regression in bracketless `for in` statements

For in range was matching part of a normal for in statement which
made the replace function return undefined. For in range now will
return the match ($0) if a match is not found.