Use BytesIO to support python 2.7 and 3.x