I agree with you... I actually was doing like you suggested until the mooltipass project came.
However, if any of the functions was to change place, then we'd need to change all the files that are actually calling this function.
In the long term, we may actually loose track of which file a given .c file actually needs...
Anyway I've used both techniques so I'm very open to more opinions on this one... should we ask the mailing list?