Cache the cdef types inside the .so made by verify()
Parsing the C code of large cdef()s takes time. We should accept lazily the strings passed to the cdef()s. When verify() is called, if a module was already compiled, then the compiled module should contain everything needed --- e.g. a marshal-like description of backend types. This would avoid both the C parsing and (with some care) the building of model.py instances.