Codebase Rebuild Part 5 (compilable+working)

somewaht buggy though, mouse events are not working properly or anre
handle how they should