fork from  Mikal Hart ' Library, please refer to http://arduiniana.org/libraries/streaming/