Support required modules by `get_used_modules()`

I'm sorry, this is huge patch.
However mainly changes are in `src/compiler/lexer/Compiler_lexer.cpp`.

Could I please get your thoughts on this?