fixing routes with multiple path names; includes a major refactor and breaking changes from 0.0.2