Inserts a new file into the project
Inserts a new item into the project to represent the given file. This function updates the project in memory and does not write the project to storage. The save function must be called to write the values to storage.
Currently, the file should not be a duplicate reference to a file already in the project.