initial commit for product-wise type checking
Product checking works
fixes
implemented generation of hard-coded (partial) configurations
Merge branch 'master' of git://github.com/ckaestne/TypeChef into productTC
And fixed a very stupid bug in ProductGeneration.scala

Conflicts:
	CTypeChecker/src/main/scala/de/fosd/typechef/typesystem/CExprTyping.scala
some bug fixes, again
more typechecking tasks (singlewise, pairwise, coverage,..)
Merge with Joerg
Merge branch 'liveness' of https://github.com/ckaestne/TypeChef into productTC

Conflicts:
	CParser/src/main/scala/de/fosd/typechef/parser/c/PrettyPrinter.scala
	CRewrite/src/main/scala/de/fosd/typechef/crewrite/CASTContext.scala
	CRewrite/src/main/scala/de/fosd/typechef/crewrite/CAnalysisFrontend.scala
	CRewrite/src/main/scala/de/fosd/typechef/crewrite/ConditionalNavigation.scala
Merge with Joerg
fixes
Merge master into productTC
optimized completeConfiguration(..)

Conflicts:
	CParser/src/main/scala/de/fosd/typechef/parser/c/PrettyPrinter.scala
	CRewrite/src/main/scala/de/fosd/typechef/crewrite/CASTContext.scala
	CRewrite/src/main/scala/de/fosd/typechef/crewrite/CAnalysisFrontend.scala
	CRewrite/src/main/scala/de/fosd/typechef/crewrite/ConditionalControlFlow.scala
	CRewrite/src/main/scala/de/fosd/typechef/crewrite/IfdefToIf.scala
	CRewrite/src/test/scala/de/fosd/typechef/crewrite/ASTNavigationTest.scala
	CRewrite/src/test/scala/de/fosd/typechef/crewrite/ConditionalControlFlowGraphTest.scala
	CRewrite/src/test/scala/de/fosd/typechef/crewrite/FileTests.scala
	CTypeChecker/src/main/scala/de/fosd/typechef/typesystem/CExprTyping.scala
	ConditionalLib/src/main/scala/de/fosd/typechef/conditional/ConditionalLib.scala
	ConditionalLib/src/test/scala/de/fosd/typechef/conditional/ConditionalTest.scala
	FeatureExprLib/src/main/scala/de/fosd/typechef/featureexpr/FeatureExpr.scala
	FeatureExprLib/src/main/scala/de/fosd/typechef/featureexpr/FeatureModel.scala
	FeatureExprLib/src/main/scala/de/fosd/typechef/featureexpr/sat/SatSolver.scala
	Frontend/src/main/scala/de/fosd/typechef/Frontend.scala
optimized completeConfiguration(..)
fixed a but with macro variable in busybox.
Needed to implement FeatureExpr.collectDistinctFeatureObjects()
implemented efficient configuration completion for sat
refactoring of single/pair/triplewise generation methods
fix collectDistinctFeatures in definedMacro
refactoring of the productgeneration algorithm
fixed a bug introduced by commit 74426be70bf8d339c7ff2491b5b20f3bd93ebed2
added "SingleFeatureExpr" trait
Optimization for the ConfigurationGeneration algorithms
Configurations are now stored as BitSets