Added a FileWatch client to display file contents.

This widget reads from a file and displays lines as a widget.
Generalized BarClient to MonadIO instead of IO.

There's no need to require BarClient to be run in the IO monad. It should work
in *any* MonadIO monad (e.g., the X monad). Monad transformers are awesome like
that.