add dependencies and initial file structure