added multi threading to make run thread async

add a thread so that the GUI won't be stuck while the run cycle is going
on. and it will e possible to notify the user of what stage the app is
in and how much parcent left till finished