function call and callback; fixed ref issues; new cargotransfere system(incomplete)