support CMAKE_<LANG>_... variables

#197 , solve the LANG issue first,

the PROJECT is harder, will solve it later after this pull request.
> I usually take much more than 10 minutes before switching project

That may be true of your current projects, but it's very likely to be false for new or smaller ones. And we need to support all of them. Small projects are important, among other things, because a good user, when they have a problem, will try to reproduce the problem in an example project.

> btw, cache is good in this case, it's easy to debug, grep,

I don't really understand what you mean here. Having no cache is simpler than having cache, no?

> I also improved algorithm a little bit, use simple regex to replace the candidate the cache only once, so the cached string will always contain only perfect candidates.

You mean `company-cmake--replace-tags`? Yeah, it's nice.
`company-cmake--convert-prefix`, on the other hand, looks even scarier now.