Fix __DATE__ macro output.

The macro was expanded to "Nov  10 2014" instead of "Nov 10 2014".
There was an extra space between the month and the day. I didn't
notice this until today (November 10) because as long as the date
is single digit, the wrong format string happened to produce the
correct result.
Update .gitignore.
sizeof() and alignof() are constant expressions.
[C11] Add alignas().

This patch makes the parser for the declaration, which is already
complicated, even worse. I want to clean it up but the issue is that
the C declaration syntax *is* too complicated.