Fix parsing forward declaration
Fix nested include
Fix self reference
Fix corner case of C statement "typedef void foo;"