Reimplement Observable around new flattenScan op