Refactor OOP/EDA

* added a small event dispatcher
* clean up transition.py and inherit from dispatcher
* config API clean up (50% reduction) and inherit from dispatcher +
transitionconfig package deletion
* some small modification on transitionkernel files
* TODO :
** add event_list = () in configeventinterface
** rewrite application manager
** rewrite addin manager
** modify config add-in according to new config API