Guide: complex data types

I'm not happy about the hand-waving around `cmp`, but I'm not sure how to get around it.
I think I'm possibly a little unique in considering it a mistake, but the other stuff is true.

(The one thing for which tuple structs are better is the default way in which they are constructed: `Name(foo)` rather than `Name { data: foo }`.)