- Linking Freetype.
- Started implementing freetype in gui sys.
- Initialize freetype in sys_gui.
- Preparing a 'panel' layout in main.
- Updated TODO.
- Finally stopped using shared_ptrs.
- Updated TODO, will have to check some resources on render-to-texture when rendering scopes and such.
- Removed license contents in favour of thinking about it for a while.
- gui::base now holds a pointer to a 'viewport' 2d vector, that goes  back to its parent layout, that goes back as well to the gui_sys. It is updated every time that the gui system catches a INPUT_WIN_SIZE event. The viewport is resized, and the variable changed, allowing all childs to receive updated values of the viewport.
- The gui::comp::button uses a generic frag/vert shader pair, that asks for a vec4 uniform (the colour, with alpha value). Shader todo.
- The gui::comp::button uses the shader program class convention function to set an attribute pointer to the position.
- The gui::comp::button uses the shader program class convention function to get a uniform location.
- The sys_gui asks for a GLFWwindow pointer in the constructor. It's kept as a class member to access the viewport, and more to folow i guess.
- The sys_gui init function gets the window size. It must therefore be initialised.
- The sys_gui now handles the INPUT_WIN_SIZE event by getting the new size and setting the GL viewport accordingly.
- The sys_gui addapts to the gui::layout constructor need of a pointer to a vec2 representing the viewport size.
- The gui::layout asks for a pointer to a vec2 to represent the viewport.
- The gui::layout sets its components viewport to its own vieport pointer. Chain reaction, then.
- tools::shader get_attrib_ptr and get_uni_loc function conventions. TODO: think about uniforms.
- MAIN now uses a cleanup function that shuts down the core and terminates GLFW, but leaves up to the user the actual app ending. A macro is used to call cleanup and return the macro parameter value. The old EXIT(val) approach fucked up variable destruction badly, and leaks were ensured. 0/10 would not recommend.
- GL blending is enabled in a dubious point at the app startup.