Fix deprecations and errors for SWIG 2.0.11

Extending a `struct` with its `typedef` name is deprecated as of SWIG 2.0.5.
We should use the struct name directly, even for constructors and destructors

Its not applicable for anonymous structs (of-course)