added ftp project
rewrote control flow with async waterfall