rename future_base to shared_state
use atomics for intrusive_ptr of shared_state
add test for futures in mt-env
ioptimize test for fiber in spinlock