Issue #33 - Avoid calling 'cancel()' manually

* This will prevent the infinite loop
* TODO: Any listener should call 'cancel()' safely
Issue #33 - Recompute survey languages if the languages are not set

* This fixes the problem of upgrading from an old version - 1.10.0 - of
the app.
* Create a worker thread to perform the computation.
* Store new dynamic language setting
* Add FlowApp application
Update app version to 1.12.1