Added ability to match do/end pairs plus always returns exactly to start if no match found.  flaw: Hacky use of mZ may screw up your marks