Assign var.resultType
Add planner, though it's so simple.

One of the biggest concerns at the moment is about circlic imports.  We
(will) have tightly coupled sub-systems, and it makes convenient to separate
name spaces.  However, Go doesn't allow circlic imports, which may be hit
as the system gets complicated.