Fixing incorrect error message when restore version mismatch.
Update the Client to behave like the server flow.

Need to still deal with edits and packet loss

basic reference app added
Adding support for persisting edits.

- removed some unsed code in the process.
- still need more test to be complete.