Implement R.evolve

evolve :: { k: (v → v) } → { k: v } → { k: v }
======

For the proposal, see: ramda/ramda#648
I think `fn` and `key` would be fine in this context.