Semantic Analyser: First draft for structs/records.

Recursively determine the type of a struct access. As
of this writing, there is no unit test covering this.