Further classify source files into languages

Other modules (notably the precompiled header one) may set properties
directly on the source file; we need to separate them into categories
for which language they belong to.
Merge pull request #300 from rolk/300_precomp

Further classify source files into languages

Needed, for instance, to properly assign derived properties to a subset
of the sources.  
  
This feature is used in the PCH module (UsePrecompHeaders.cmake)
Merge remote-tracking branch 'upstream/master'
Merge branch 'master' into devel