Added ability to rename features

I'm not completely satisfied with this, but wanted to get it open sooner rather than later. I'll leave a few inline comments. The branch obviously won't build until we do something with `IvoryT` (I really wish you could re-target PRs in GH)

/cc @etorreborre @markhibberd @raronson 
I mean more, we should have at least 1 thing to write out for every key on the reducer. If not some invariant has failed. So i think this should terminate the job not skip that record - because I think it indicated corruption or code bug.