added generic methods (minor)
Initial abstraction and/or refactoring to decouple UI from Worker classes