Cleaned up the API and made it more dynamic. ...

Instead of using a static array the data source method now returns an array depending on the current filter.

(Demo updated too of course!)