reroute messages through fyi(), warning() and error()