add new file functionality