Set the card ID if updating from DataCard.

If an ApiCard is updated with a new backing DataCard, set the ID to the
correct value.

Change-Id: I05d7fddc6434630949c15678bfa282c0c4f3b14c
Add constructor to DataCardImage without DataCard.

Change-Id: Ib7b075b34d577c07bc8136b25e4c69c970734c5b
Avert confusion by renaming DataCard to CardData.

Massive confusion has been reported by many, due to the fact that the crucial
object backing DataCards is also called DataCard. Which is also not to
be confused with any other type of card. Cards, cards, cards...

SO... bite the bullet and rename all of the many instances of *Data*Card*
to CardData, as this object represents the data that backs an actual card.

Change-Id: I17a035cfd56c46f04da339b143a6289518b1deb7