Allow building a file with both C and C++

This is pretty hacky: essentially the idea is that you have to load
_all_ your C projets before any of your C++ projects because what
happens is that the C code won't search for C++ code until C++ has
been loaded.

This should be a pretty rare sort of problem: it should only happen if
you happen to have a C and C++ file with the same name but different
extensions.