rename response constructor to be consistent
tighten router mli

expose much less functions currently and seal the types. There's still a
lot of crap showing through however so more changes are incoming