add tests which check that a routing callback receives encoded values which it can decode manually
merged 1b2c8ab4384ddc3fb70e2560d90c824fcb4c0983