title: JavaFX: ScheduledService does not trigger SUCCEEDED state change after each iteration
body: <p>I am experiencing a strange bug that a <code>ScheduledService</code> does not trigger <code>ChangeListener</code> when it successfully completes any iteration.</p>
  
  <p>This is how this can be replicated:</p>
  
  <pre><code>final ScheduledService&lt;Void&gt; service = new ScheduledService&lt;Void&gt;()
  {
      @Override
      protected Task&lt;Void&gt; createTask()
      {
          // TODO Auto-generated method stub
          return new Task&lt;Void&gt;()
          {
              @Override
              protected Void call() throws Exception
              {
                  // TODO Auto-generated method stub
                  return null;
              }
          };
      }
  };
  
  service.setOnSucceeded(event -&gt;
  {
      System.out.println("onSucceeded() triggered!");
  });
  
  service.stateProperty().addListener((obs, o, n) -&gt;
  {
      System.out.println(n);
  });
  
  service.setPeriod(Duration.seconds(2));
  
  service.start();
  </code></pre>
  
  <p>Output:</p>
  
  <pre><code>READY
  SCHEDULED
  SCHEDULED
  RUNNING
  onSucceeded() triggered!
  READY
  SCHEDULED
  SCHEDULED
  RUNNING
  onSucceeded() triggered!
  READY
  SCHEDULED
  SCHEDULED
  </code></pre>
  
  <p>This is strange because <code>onSucceeded()</code> event is triggered, but the <code>ChangeListener</code> does not get a corresponding value change. Of course, I can definitely use <code>setOnSucceeded()</code> to do all my stuff, but it is still weird because I have handled all states in the <code>ChangeListener</code> except <code>SUCCEEDED</code>.</p>
  
  <p>Does this count as a bug in the API?</p>