initial commit. application structure. recursive search. CLI options parser