add parse_args
update dependencies
refactor to oop