Fix race conditions and improve asynchronity in plotting

* Use SwingWorker
* FunctionPlotter reacts to interruption
* Splitted events in FunctionStore