Project structure and codebase in development, it promise to grow. This section would help with understand what is going on, before you start to work with code.
* To access any children features, deeper or higher than 1th level of current class, use delegation methods (actions, getters and setters)
* One file - one class. If the file requires additional (GTK) component, this component should be placed at similar folder with same name as parent filename. So we have simple hierarchy navigation logic - from app to window, from window to it container, etc.
* At this moment, all constants named with uppercase, const everything that not mutable
* Database table fields must contain only members of their class (e.g. private and public variable values) and may include primary keys to their parent class (tables) according to the namespace hierarchy