pub fn serialize_message<W: Write, Buffer: Borrow<[u8]>>(
    message: MIDIMessage<Buffer>,
    output: W
) -> Result<(W, u64), GenError>