Removed (void **) casting now dynarray_count is typesafe
Moved funcargs definition to funcargs.h
Large refactor of how redeclarations work

Function attributes and asm() renames propagate down through prototypes
until a definition is reached, at which point they're evaluated.

Scope (previously typedef.c) has been tidied + removed old unused
extra code.

Large loops searching for decls with the same names have been removed.
Removed is_definition now decl linking is cleaner
Added inline code-gen warning to fold stage
Merge of scope + symtab find functions
Added scope/redefinition examples