ensure dinerl:update_data/4 always re-schedules itself

This looks a bit more bearable now and makes absolutely sure that `update_data` always continues running in the background.

* wrap `update_data` in try/catch
* clean up code that deals with `clientarguments()`