I find it fascinating the way an information channel can be extended so that old receivers see no changes, but new receivers get more information. For example, color TV does not transmit RGB information, but luminance and chrominance, so that black and white TV sets would see just the luminance in the way they always had.
Text applications have a similar problem: suppose you have a receiver expecting plain text information. How do you add formatting information so that it is invisible to the plain text receiver, but can be decoded by richer clients? ProleText does it by adding trailing whitespace in specific ways to encode formatting information. Clever.