Added initial vardef framework

Beginnings of vardef framework