...A traverser decides how the data is read. This data is stored in the buffer. The commands decide what to do with this data.
All data is handled as characters, by specifying an encoding. For binary data, the encoding ISO-8859-1 is used by default, has 256 single-byte characters. Data in the buffer is available as a charsequence to the commands for stuff like regex matching etc. The output can be redirected to a file, and an output encoding can be specified.The commands can also store/retrive arbitrary data for later use in a map. ...