AzureCarts: Include necessary carts in AzureCarts.carts
AzureCarts: Include necessary carts in AzureCarts.carts

In addition to orders with a cart status, we want to include placed
orders that are pre-cutoff and carts created on the old website
without trip information.

If any carts are missing trips, the initial Carts.cart is the first
such cart in the array.  So if no carts have trips, we're still
setting Carts.cart to the first cart in the array.

If any carts have trips, when those trips resolve, we sort all orders
in the cart array (everything except carts with in-flight trips).  We
sort orders with future cutoffs to the start of the array, preferring
cutoffs closer to now.  Orders without trips/cutoffs and orders with
cutoffs that have passed are pushed out to the end of the array (or
will be until around the year 4707) and are then sorted by order ID,
preferring lower order IDs.  Whichever cart sorts first is stored in
Carts.cart.  This sort-and-set repeats as each requested trip
resolves, so there may be some flux in the selected cart until that
finishes.  I expect that timespan to be small, but if we want to avoid
it entirely we can specify by-cutoff ordering in the API.

azurestandard/azure-angular-providers,azurestandard/azure-angular-providers