changed communication output to use proc rather than being a separate output device (needs testing)