common code to the base class BackgroundThreadBase; removed classes inheriting from EventArgs; use Action/Action<T> delegates instead of EventHandler<T>. Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>