route symbol values are now collected into a hash, and passed as the first argument to handlers. this is to address the issue with optional symbols and the way dep injection works