Add viewmodel for Document

Now that carts and documents have different date formats, we need
multiple displayDate functions (for handling iOS quirks). This is the
point at which a separate VM for documents makes sense.