Generalize STDERRDevice into StreamDevice