Abstract out bxf send message to allow us to easily add extra commands.
Add extra bxf commands to usbutils
Abstract out bxf recv message.
Add flush and version commands to bxf start up, flush buffer and try to parse version response string.
Add sending of flush command to bxf on flush_work
Send the maxroll command to the bxf driver and store the value to see if we need to update it.
Allow messages to have arbitrary offsets in the bxf parser in case we have lingering buffered data.
Send extra work regularly to the bxf device and parse the needwork command by sending the amount of work it requests.