support different output channels
arg forgot parameters
cleanup
cleanup
output on stdout implemented
tidy up