a little better setl subprocess handling