use gcc to substitute #define statements

(e.g. for popular solarized theme)
run `cpp` instead of `gcc` for preprocessing (as does xrdb)
remove File::Which dep, themes in sorted order, print only filename
Selective merge of branch 'r4d2-master' into temp
Optional preprocessor  configured via settings