extract commands
refactoring
extract response object
extract server session
store id in server session
mostly uncommited changes, building out sessions and returning opaque nuts