Simplifications and removed confusing async bits