refactor argument reader
refactor task loader
refactor task loader
add task runner
refactored main test