Currently builder just dumps bytes into the provided buffer, meaning it panics if the buffer isn't large enough. Is this the wy to keep it? Alternatives?
Right now I'm leaning towards returning a Result<Frame, LengthError(u32)>, with the error case holding the required buffer length (i.e. *snprintf overflow style).