Revised spec to carry arbitrary data and simplify encoding.