This generates a working protocol buffers reply.

A lot was pruned, I am not directly against the rest, but we must semantically define what clients should
provide if there are parent/child relationships. I wonder if it is even possible with newer versions.

I mean: Line -> Routes -> Line
I greatly agree, but the rationale was to support timezones.