Merge pull request #1995 from yebblies/typeparens

[DDMD] Remove (type) where type is a variable
Merge pull request #1994 from yebblies/entitybraces

[DDMD] entity.c: wrap array of structs elements
Merge pull request #1997 from yebblies/zerotonull

[DDMD] 0 -> NULL
Merge pull request #1998 from yebblies/tfloat2

[DDMD] Remove an always-identical #define alias (tfloat2)
Merge pull request #1996 from yebblies/evictdefine

[DDMD] Move #defines out of structs
Refactor win32 makefile to build four libs before linking
Add backend-independent stub glue layer
Replace expression macro with lines in it
Turn el_setLoc into a function
Get rid of function-local extern function declaration
Expand macros
Initializer lists
typedef X { } name
Replace a macro with #ifdef
Replace another rename macro with an #ifdef
Do not use #defined aliases to expressions in Type
Implicit conversions and shadowing
0->Loc
unsigned char* -> const char*
Breaks utf8 BOM
Make char unsigned
More implicit conversion errors
Mostly implicit conversions
Stack allocations, implicit conversions
Don't overload for enum types