put all the globals in a struct