Refactor ThreadedRegexVM::exec_program to avoid branching
Refactor ThreadedRegexVM::exec_program to avoid branching

Moving logic into step_thread instead of returning an enum to
select what to run avoids the switch logic and improves run time.

alexherbo2/kakoune,danr/kakoune,danr/kakoune,Somasis/kakoune,casimir/kakoune,alexherbo2/kakoune,jkonecny12/kakoune,mawww/kakoune,mawww/kakoune,occivink/kakoune,casimir/kakoune,jkonecny12/kakoune,lenormf/kakoune,danr/kakoune,mawww/kakoune,Somasis/kakoune,alexherbo2/kakoune,lenormf/kakoune,occivink/kakoune,jjthrash/kakoune,occivink/kakoune,alexherbo2/kakoune,jjthrash/kakoune,mawww/kakoune,jjthrash/kakoune,jkonecny12/kakoune,Somasis/kakoune,lenormf/kakoune,casimir/kakoune,occivink/kakoune,danr/kakoune,lenormf/kakoune,casimir/kakoune,jkonecny12/kakoune,Somasis/kakoune,jjthrash/kakoune