reworked how responses are relayed (they automatically die now). controllers can register themselves with requests as "hops" if theyre only routing to a subcontroller. controllers can more easily return a 404 if there are extra tokens where the request should have instead ended. also docs