chore(migration/router): implement phase 2 router
Related to #509 (closed)
This MR implements the basic logic for the phase 2 routing logic, but does not replace the phase 1 routing logic, as #570 (closed) must be resolved before we deploy phase 2 routing on production.
Edited by Hayley Swimelar