added a working engine with a nice turn logic