main arguments  handling
refactoring
remove unnecessary source dir