first working draft with systray functionality.