typedef scoping and fixed basic-type parsing

typedef redefinitions now shadow or error, depending on scope
Type parsing now handles short-int, long-int and long-long more cleanly.
typedef scope tests
Check for signed floating point
Added comment about broken typedef parsing
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.
Makefile deps - typedef
Merged decl and typedef arrays for scoped lookups
Fixed typedef propagation
sym duplicate checks
Merge of common sym_local code
Print decl store
Only rename statics for scoped variables
Don't check function redef clashes
Fixed one-definition check

Local-duplicate checks are done per-spel and globals, per-definition
Re-allow void pointer arithmetic
Allow anonymous decls through code gen (e.g. strings)
Use d instead of s->decl