Add file managing
Add codes authored by zyh
Add compile module