improve corner cases of lexer

- #ifdef +3
document changed defaults

see commit 7cb1909
extra tests to ensure that dimacs and fm.approx play nicely together
print parse results by default (again)

there is no flag to activate it otherwise, only to deactivate
fix issue #12

extern declaration of unknown structs are okay, even access to them. check completeness of structs only when declaring a variable
fix previous fix for issue #12
skipping files with contradictory presence conditions (incl. the feature model)

this has lead to strange parser bugs, where it could not parse typedef declarations. the typedef had presence condition true, while required previous typedefs had another presence condition.
an invalid feature model leads to the effect that True is satisfiable, but nothing else is. (and true also just because of caching)
fix: lexer did not get the local/file feature model

lead to lexer errors in boot.c, which should not happen. caused only by an invalid expansion
relax type system to avoid false positives on invalid redeclaration of variables

this has to do with tentative definitions and is not entirely fixed, but less more generous. if prevents false positives at the cost of some false negatives
fixed type of sizeof() expression to size_t

(if size_t is defined in the environment)
a function apparently works as scalar as well

if (foo) is valid if foo is a function (not only if (foo()) )
fix test for dedcb45542148967c
write empty error file instead of deleting

previous very strange and unrelaible behavior
fixed parameters of functions returning functions

example: int (*foo(int x))(int*)

previously the type of such function was correctly determined, but the paramters were derived from the wrong declarator (the outermost instead of the innermost)
adding two test cases for default types in C (variable typing and function typing (return type))
Merge branch 'master' of github.com:ckaestne/TypeChef
default type when missing type declaration is int

instead of returning an error on "static a;", a is implicitly declared as int. we may want to add a warning there later.

fixes joerg's test cases
working around weird nullpointerexception in satsolver
moved CAnalysisFrontend initialization

to prevent kiama error when running on our server
fix sat solver caching