complete rework with improved structure and usage of code.google.com/p/go.tools/go/types
add testcase for hidden vars in scope