start on generating Go code as well