Better support for ObservableList changes:

* Add ListChange, TransientListChange and MaterializedListChange interfaces.
  These provide a simpler model for list changes than
  javafx.collections.ListChangeListener.Change.
* Expose ListChangeAccumulator.
* Add EventStreams.simpleChangesOf(ObservableList) factory method.