added mover, still primitive, no callbacks