create a linked list of dependency structs
/*Adds dependencies to the rule*/
void add_dependencies(Rule *rcurr, Dependency *dhead, Dependency *dcurr, char *token){
    // go through all dependencies
    while((token = strtok(NULL, " \n")) != NULL){
        Dependency *dep = malloc(sizeof(Dependency));
        // we will modify these later, set to NULL for now
        dep->rule = NULL;
        dep->next_dep = NULL;

        // if this is the first dependency, replace
        if (dhead == NULL){
            dhead = dep;
            dcurr = dep;
        }
        // otherwise, append to the next dependency
        else{
            dcurr->next_dep = dep;
            dcurr = dep;
        }

        // if this is the first dependency for the list, replace
        if(rcurr->dependencies == NULL){
            rcurr->dependencies = dep;
        }
        // otherwise append to next
        else{
            dcurr->next_dep = rcurr->dependencies;
            rcurr->dependencies = dep;
        }
    }

    while (dcurr != NULL && dcurr->next_dep != NULL) {
        dcurr = dcurr->next_dep;
    }
}