Would it be possible to switch from generators to promises? This would allow the lib to work in environments without generators.