move differential testing infrastructure from test to main

 is useful for other purposes as well, such as generating (and validating) valid configurations from a feature expression
added extra test that failed due to dumpconf bug

dumpconf would rewrite "depends on m" to "m & CHOICE_." referring to the last (but now unrelated) choice.
The reason is that the module dependency is added and this has not had a name, was thus confused with a choice.
restructure differential testing to make it more reusable
test cases that check whether the default configuration is possible (failing)
choice values without prompts are not considered as choice values

they are not an option in a choice.

conditional prompts are not supported
give select priority over depends clauses
follow change in dumpconf (no longer quotes for y/n/m)
fix test files

newer versions of Kconfig do no longer rely on the name matching for MODULES
(which kconfigreader still does), but require "  option modules"

several test cases from undertaker were failing because they did not
use "  option modules"
make linux tests selfcontained

commiting all kconfig files of a linux version (2.6.33.3) and using included binaries by default