Ensure that GenProcess handles crashes whilst sync calls are underway

A cleaner API for terminating (or informing) the client has been added.
Additionally the Counter server example and test cases have been updated
to reflect the changes.