Don't resolve struct members from public struct types (imported struct) which aren't public.
 Closes #179
Don't NPE when a type declaration if broken.
Fixes some other test cases.
Closes #218
Code cleanups
When creating a new go file make sure to not treat ending .go as a file name.
Closes #421