use shared_ptr for actions
update readme [skip ci]