JS Regex Translation

Here's the machinery that translates DXR-flavored (Python- and PCRE-ish except without a few fancy feature like lookarounds (so far)) to JS ones we can run inside ES. Really, the only difference is that \c means something in JS's regexes but not in Python's. You can see in the tests that the ones expecting a difference are very few.
I guess its a little weird that the PythonRegexVisitor inherits from the JsRegexVisitor.
It makes sense from a code reuse sense, but implies an inheritance relation that I don't think exists.

That said, I'm generally skeptical to polymorphism via classes so feel free to ignore me on this one