lots of features: tree output and piping