Refactor the code for managing key state.

Anything looking to submit ops to the system any way other than "client_atomic"
would have to duplicate and modify many lines of code.  This refactor moves it
all to shared functions.
Small YCSB fix
Don't always log to stderr
Ignore YCSB in .gitignore