The address app provides core address models - it doesn’t provide any views or
other functionality. Of the 5 abstract models, only 2 have a non-abstract
version in oscar.apps.address.models - the others are used by the order app
to provide shipping and billing address models.

A user’s address. A user can have many of these and together they form an
‘address book’ of sorts for the user.

We use a separate model for shipping and billing (even though there will be
some data duplication) because we don’t want shipping/billing addresses
changed or deleted once an order has been placed. By having a separate
model, we allow users the ability to add/edit/delete from their address
book without affecting orders already placed.