Full modifiers and backreference support
Fixed various important edge cases, like non-greedy operator, and some backreference scenarios.
For example, all of the following not work, which did not in the previous version:
/a++/.examples
/a{1}?/.examples
/([ab]){2} \1/.examples