I would like users to be able to have persistent shopping carts. In other words, unless they check out the shopping cart explicitly the shopping cart with the same items should be available the next time they visit the site. Obviously this would be through the use of a cookie...
Is this possible in Drupal?
Yes. This is right in Ubercart. You can set the cart time to whatever you please.
There is duration and units for anonymous and separate settings for logged in.
Visit this on your site: admin/store/settings/cart/edit/basic