First round of functional separation
Second wave of cleanup
More cleanup

- small fix to adjacent match logic in respect to scopes
Even more cleanup

- Add in endpoint bracket highlighting mode