Allow Beginning of Match to be Adjusted

Added support to the RegexMatch class -- and where it's used -- so that the beginning of the match is recorded before the engine is invoked, and so that it can be adjusted during the matching process.
Reset Match

Implemented the \K structure, which allows the beginning of the match to be adjusted mid-match, and related unit tests.