begin of the massive clean up
Revert "begin of the massive clean up"

This reverts commit 356ec2b1e69bc9a4487c4610ff16a1c34f4ba429.
fixed undefined reference to virtual by makefile and file restructuring
this is literally going to take forever