refs #2, #3. working on spec. type variable part is almost done.