Use normal integers.
Adds a type for enum ranges.
Adds the missing Name from feature.
Adds a basic type for Type Implementation.
Improve Type and Enums.
Adds prefixes to records
Some fixes to get it to compile and export.
Resolve the proto element.

The current implementation is a combination of Name and return type. The
question remains if this is expressive enough for all the functions in
the specification.
Use TypeName.
Adds specific names for Enums and Commands.
Merge branch 'master' into types
Updates the types for the new spec.
Removes some unused types.
Adds quite some documentation on the types.
Some updates on names (rename Name => CPPToken).
Include seperate developed preprocessor.

This preprocessor replaces the C-style types from the spec. This is
done by parsing and then encode them in xml form. The preprocessor
is split of to be able to use it for parsing the spec.
Change proto => return
Rename Type->CType, and improve the regestry types
Only preprocess types and commands tags
Add a pickler for the registry