Changing the architecture of Parser.Structs (part 1)