completed fifo_fix example

A fifo example which fixes the race problems has been completed.
It uses a single mutex to protect the few variables which
change in the read and write operations.  It also shows how
to initialize a mutex without using DEFINE_MUTEX.