A class to hold the data for a single row retrieved from the database.
It will also save the originally retrieved information in case the
data is changed.
A row can be in three different status:
NEW - the row has not been retrieved from the database (i.e.