Go side looks pretty good at this point.
wrapper to the new type system. Intermediate commit before I rip out the old stuff, not working yet.