refactored Ydl::CLI.new