merging obj_file and obj_base into one single file as I finally understand that C++'s multiple file system is not a module system... I should write everything that work together in one single file, instead of splitting them up