Remember working state across restarts (based on started state branch)

This is based on https://github.com/nikolavp/awesome-pomodoro/tree/keep-started-state.

 - Fix setting the initial value by using pomodoro.left with `settime`.
 - Use `math.min` to get the lower value for `pomodoro.left`, in case
   the config/setting has been changed.
 - Move call to `awful.tooltip()` to the end of `init`.
 - Fixes nikolavp#15.
Why do you need the min here? Isn't time_from_last_run always smaller than work_duration? The same for the pause case?