This commit adds the fifo.EventChannel interface for consuming (VRRP)
events from keepalived.
This is what package users should accept when expecting a handle to the
event stream.
fifo.FifoChannel is an implementation of this against an IPC FIFO channel
opened via MkFifo(), and can be considered the primary "producer" of
fifo.EventChannel events, but importantly we can create other
producers, notably for testing.