Fixed typedef vs identifier clashes/definitions
Renamed typedef test for redefining in scope
typedef parsing fixes when in identifier scope
Parsing decls adds directly to symtab.decls

Similar to typedefs, so a decl is immediately in scope on the next line.
e.g.

int i;
typedef int i; // need to see the above "i" to generate an error.

This is incomplete - symtab.decls and symtab.typedefs needs merging.