engine/agent: change reconciler ticker behaviours

The engine/agent currently reconcile every $reconcileInterval, irrespective of
whether any reconcilations occurred for other reasons
(i.e. were triggered) within that period.

A better semantic is for the tick to occur every $reconcileInterval
_after the previous reconciliation was triggered_. To accomplish this, reset
the ticker every time a reconciliation is about to commence.