per-key actor epoch (kv679) rebased on 2.0

See original PR for discussion, rebased for easier merge (before squashing.)

This PR addresses most of the comments from the original PR at basho/riak_kv#1040
See comment above, I'm sorry that I should have said, this test is not complete. My plan was to work on the test while the code was reviewed. I'm still kind of hoping someone else will pitch in and write some unit tests for the riak_kv_vnode portions of the code. And I still don't know how best to test the interaction/blocking portions of the protocol.