Add full message routing system; re-adapt all tests.