Manage the isRunning flag and allow clearing a countdown

This merge request implements management of the isRunning flag which may be used for (amongst other things, perhaps) hiding or displaying the timer display depending on whether the timer is running using a simple ng-show="isRunning", for example:

  <timer autostart="false" interval="1000" countdown="timerLimit">
    <div ng-show="isRunning">
      Time left to complete this section: {{ millis | date:'m:ss' }}
    </div>
  </timer>

It also adds an event that an application may use to clear a running timer. This allows the application to cancel / stop the timer (and hide it if the above flag is used) but not generate the "stopped" event back out of the timer.

When combined, these two elements allow the display of a countdown timer on a page when appropriate, and hide it when not, and cancel it without generating a "timed out" error when appropriate.