The big changes start here. I'll be adding a lot more documentation about how routing works.