Updated handling of selector expressions to match the changes in the go/types API.

The difference is that go/types removed the PackageObj SelectionKind and handled those cases differently.
Fixed issue where generated source code includes invalid access to unexported package objects.

The current solution is not optimal. The entire history of the source
code the user typed is parsed and type checked after every input.
It could fairly easily be cut down to just declarations (that's a TODO).
Refactored the code to implement a function call into call.go

This is to set up for implementing the "go" statement.