Es geht nicht darum, ob das möglich ist. Dass es möglich ist, siehst du ja an deinem Programm. Es geht darum, ob das sinnvoll ist.
Bei 2 Dateien mag es noch möglich sein, den Überblick zu behalten, aber bei mehreren Dateien wird das sehr kompliziert und fehleranfällig. Du musst nämlich sicherstellen, dass die Abhängigkeiten der Dateien einen gerichteten Baum darstellen. Sobald du gegenseitige oder zyklische Abhängigkeiten hast, funktioniert das nicht mehr.
Außerdem werden dadurch alle deine Source-Dateien praktisch zu einer einzigen, großen Datei zusammengepackt, die dann auf einmal kompiliert wird. Wenn du also nur eine einzige Datei änderst, muss alles neu kompiliert werden.
Wenn dich das nicht überzeugt, dann glaub mir einfach, dass es keine gute Idee ist. Gewöhn es dir ab, bevor es zum Problem wird.