Return once we've already determined the cppcheck version.
Have a global property of already scanned sources.

This is as opposed to a re-entrant one. Avoids opening new files
all the time if we've already scanned them.
Don't break from the scan loop if we find a nonexistent or generated h.

Instead, just don't scan it.
Includes using "" might exist in the source directory.
Merge pull request #17 from smspillaz/cppcheck-target-cmake.item_17

Various correctness fixes.