Fixed issue #138
Finished typenames with namespaces.

- Added support for interfaces
- Added unit tests
- Refactored code generation test cases
Merge branch 'fix-namespace-name-generation' into 3.x