something preventing a straight typedef struct {} HostProperties here? Doesn't seem to be self-referencing