refactor route-matching strategies

regarding table: correct; this was just floating the idea for feedback. I haven't packaged it up yet.