add sync/async observable/async future -- to be finished ;)