initial runner implementation