Add support for cabal sandboxes.
Whitespace.
Whitespace.
Clean up the grammar rules for attribute specifiers.

The GCC docs use the term "attribute specifiers," so the corresponding
grammar productions is now named analogously.
Update copyright.
Clean up handling of string literals.
Assembly labels are string literals.
Clean up handling of extern qualifier with linkage.

 * We no longer differentiate between extern qualifiers with and without
   linkage.

 * Linkage is specified with a string literal rather than a single
   STRING.
Add support for GCC's label attributes.
Assembly templates are string literals.
Clean up parsing of inline assembly.

 * Properly differentiate between input and output operands.
 * Add support for symbolic names in operands.
 * Add support for 'asm goto' statements.
Add support for the C99 _Bool, _Complex, and _Imaginary types.
Fix import of Typeable.

As of GHC 7.8, Typeable no longer has any members. We only need to
import the class itself, anyway.
Add a Located instanced for RevLists.
Eliminate right recursion in the grammar.
Turn on -Wall in the parser example and fix warnings.
Clean up handling of flags and add a flag for pretty-printing code with #line pragmas.
Add better support for parsing GCC-style attributes.

Attributes can appear in many places, and they do appear in many places
in Apple's system headers. We now support more of those places---enough
to parse the Apple system headers.
Reorganize code.

There is no functional change with this patch. The various C language
extensions are now individually grouped together. Hopefully this will
make the syntax and grammar slightly easier to work with.
Split Clang blocks into a separate language extension independent of Objective-C.