- Refactored 'ast.hpp' into several files for readability