Improve the previous commits adding in the support for %interface and generating documentation from Doxygen comments. Also add some runtime tests for this additional support. Fixes #3319 Fixes #3327