Seems to me they were just pragmatic.
iget is used only by the directory manipulation routines. The directory manipulation routines are in fs.c.
As for the getcwd implementation. It would be much better if you follow the chdir syscall code. The path is there. You just need to store it, probably in a new field in the proc structure. Of course, if the path given is relative, you should append it to the current stored path.