Cleaned up code, using more appropriate handler methods.

Added commit() to PCRObject to allow updating $row.
Replaced is_null array checks with empty().
Added getRow() to replace use of jsonSerialize() to get an object's row array.
Removed "JSON serialized" comments from handlers - only PCRBackend deals with serialized json.