Update to require C11, and rewrite the section on type declarations.
QAXGMU5LFU2WM6FTXJG4RVGWSTXESTQRWFH27GZBBK3W74JEXRUQC
Structs are the only types that should be declared with a capital
letter. Simple types should be declared with lowercase letters.
Use typedef sparingly, only for creating an alias for a type. Structs
should not be typedef'd, instead we use the `struct` keyword. Names
should be lowercase, preferably without underscores.