func NewProject(prof *config.Profile, name, location string) *Project {
	project := &Project{
		Profile: prof,
		Name:    name,
		Path:    filepath.Join(location, name),
		Layout: layout{
			Directories: make([]string, 0),
			Files:       make([]string, 0),
		},
		Author: prof.Author,
	}

	err := prof.Conf.Unmarshal(project)
	if err != nil {
		fmt.Printf("unable to decode into struct, %v", err)
	}

	return project
}
// NewProject returns a new Project structure given a name, where it is to be created,
// and a profile containing the directives for the Project layout
NewProject returns a new Project structure given a name, where it is to be created,
and a profile containing the directives for the Project layout
// NewProject returns a new Project structure given a name where it is to be created // and a profile containing the directives for the Project layout
func NewProject(prof *config.Profile, name, location string) *Project {
	project := &Project{
		Profile: prof,
		Name:    name,
		Path:    filepath.Join(location, name),
		Layout: layout{
			Directories: make([]string, 0),
			Files:       make([]string, 0),
		},
		Author: prof.Author,
	}
	err := prof.Conf.Unmarshal(project)
	if err != nil {
		fmt.Printf("unable to decode into struct, %v", err)
	}
	return project
}
func NewProject ( prof * config . Profile , name , location string ) * Project { project := & Project { Profile : prof , Name : name , Path : filepath . Join ( location , name ) , Layout : layout { Directories : make ( [ ] string , 0 ) , Files : make ( [ ] string , 0 ) , } , Author : prof . Author , } err := prof . Conf . Unmarshal ( project ) if err != nil { fmt . Printf ( " " , err ) } return project }
NewProject returns a new Project structure given a name, where it is to be created,
and a profile containing the directives for the Project layout
NewProject returns a new Project structure given a name where it is to be created and a profile containing the directives for the Project layout