Currently there is no way to compile a file without leaving footprints on the system. Plus, the term load_file/2 is very confusing as loaded is the notation used by modules. This commit focuses the whole loaded aspect of files exclusively on require_file/2 (and renames two functions accordingly) and introduces compile_file/2 which is semantically simpler than load_file/2.