added unsubscribe to Gui and Core
imporved event distribution to gui for new data event (just one event to gui when more than 1 subscriber)