performance fix, real separation of rendering and updating, it runs but is work in progress