BaseComponent now can take QObject as a parent.
Little code clean-up (extra destructors have been removed, extra virtual has been removed, so on).
Switch from bash to sh.