adding piece moving constraints, including collisions