Feature/re chdir on restart

done is called over an over once expectations are met. If error is emitted, and expectations are met, you don't want to call done. Once expectations are met, if there is more data, ... you don't want to call done. So, there needs to be a guard that done is not called again, and this is it.