Added support for enum fields.

Also shifted the generation of the initialization code for fields into ProtoC. (This provides more flexibility because it allows ProtoC to generate code that passes parameters to the fields' constructors, as is now done with EnumField.)
Updated README.md.