fixed canMove to allow cost to be <= to movement steps, instead of <