[DEV-279] Make sure fifo is non-blocking

My mistake. I had read that using O_WRONLY or O_RDONLY will make the
fifo blocking, but I had assumed if one side was set to O_RDWR then it
wouldn't matter. Using O_RDWR in all cases should fix the issue.