just before  refactoring GrapevineType

We need to come up with GrapevineType as a hierarchy of type system.
This is the git just before that branch.