Routing

might be ready for a good 'ol pull request
looks good. :+1:.

also, you might like the [traverse module](https://www.npmjs.org/package/traverse), as `recurseKeySwap` is as easy as: http://requirebin.com/?gist=09cca60a78a94ff4c2ad.