Groups WIP
Generate usable code for groups, although making schemas work is still an open problem.  I think I'm going to do the schema rewrite now.
Allow 'group' and 'union' to have preceding colon, and fix a bug.
Initial commit of schema2.capnp.  Time to start rewriting things...
Schema rewrite WIP.
Merge branch
Continuing schema rewrite WIP.
More WIP.
Over the hump, new schema is working and passing most tests.  Still lots of cleanup to do.
Refactor grammar.capnp to use unnamed unions.
Refactor lexer.capnp to use unnamed unions.
Remove remaining schema transitional hacks.
Fix capnpc-capnp.
Rename schema2 -> schema.
Have Node's enum and interface fields be groups with a single field, for future expandability.
Rename section sizes to be slightly more intuitive.
regular -> nonGroup
Zero out group on init.  Important when the group is in a union.
hasFoo() should return false if foo is in a union and not active.  (Previously, it threw.)

New method isFoo() exists for union fields only and returns true if foo is the active union field.
Fix GCC problems.