Major refactoring

Moved stuff around in folders
#include cleanup
Header guard name refactoring