Refactoring Image out. Making overided.
Requiring windowmanagement to be a source library as it requires implementations of it code.
Refactoring layout fully under new structure.