Update forceX & forceY when the values change

For all the charts the forceX & forceY attribuites are a read-only value that get used to initialize the chart with.
None of the directives update the charts when the values change.

I implemented a generic forceX & forceY $observe method and a way to bundle multiple updates in one digest cycle so that scope.chart.update() only gets called once for multiple changes.

This gives us a way of to update the forceX & forceY attributes on the model and have the chart respond to it.

Use via  forceX="{{ forceX }}" & likewise for forceY attribute.