moved find carts logic into a model scope and updated building of carts to use a model method