Auto-wrap cpdef extern functions.
Allow empty declarators for coerced C functions.

Also fix a potential bug with self.to_py_function beign assigned to soon.
Fix CythonUtilityCode equality to avoid duplication.
Tests for cpdef extern func wrapping.