Parse Python bindings for structs, enums, and unions.
Add p_c_python_binding to Cython.Compiler.Parsing and use it to parse
Python bindings of the form
[cdef|cpdef] <visibility>
where <visibility> is only checked if the cdef flag is set.
In some places (e.g. stucts, enums, unions, and their members) this
syntax is new. For classes and their members, p_c_python_binding
mimics the previous implementation. Where the syntax is new, the
supporting Node changes have not yet been implemented.
The test suite currently passes with the exception of position
specifications for some error messages. I'm waiting for feedback from
the mailing list to see how these should be addressed.