scripts:Update spec.py for 6-column database

Bring spec.py up-to-date so that it properly reads in the API and
note columns from the database file, and retains any note text when
updating.
diff --git a/layers/spec.py b/layers/spec.py
index b30869c..bdd306b 100644
--- a/layers/spec.py
+++ b/layers/spec.py
@@ -25,10 +25,6 @@
 #
 # TODO:
 #  1. Improve string matching to add more automation for figuring out which messages are changed vs. completely new
-# Temp hack path:
-#  1. Read in spec w/ API info
-#  2. Read in database file
-#  3. Write out updated DB file w/ API/Notes columns
 #
 #############################
 
@@ -234,13 +230,15 @@
             # Default to unknown if check or test are implemented, then update below if appropriate
             implemented = 'U'
             testname = 'Unknown'
+            note = ''
             # If we have an existing db entry for this enum, use its implemented/testname values
             if enum in self.error_db_dict:
                 implemented = self.error_db_dict[enum]['check_implemented']
                 testname = self.error_db_dict[enum]['testname']
+                note = self.error_db_dict[enum]['note']
             #print "delimiter: %s, id: %s, str: %s" % (self.delimiter, enum, self.val_error_dict[enum])
             # No existing entry so default to N for implemented and None for testname
-            db_lines.append("%s%s%s%s%s%s%s%s%s%s" % (enum, self.delimiter, implemented, self.delimiter, testname, self.delimiter, self.val_error_dict[enum]['api'], self.delimiter, self.val_error_dict[enum]['error_msg'], self.delimiter))
+            db_lines.append("%s%s%s%s%s%s%s%s%s%s%s" % (enum, self.delimiter, implemented, self.delimiter, testname, self.delimiter, self.val_error_dict[enum]['api'], self.delimiter, self.val_error_dict[enum]['error_msg'], self.delimiter, note))
         print "Generating database file %s" % (db_file)
         with open(db_file, "w") as outfile:
             outfile.write("\n".join(db_lines))
@@ -255,18 +253,22 @@
                     continue
                 line = line.strip()
                 db_line = line.split(self.delimiter)
-                if len(db_line) != 4:
-                    print "ERROR: Bad database line doesn't have 4 elements: %s" % (line)
+                if len(db_line) != 6:
+                    print "ERROR: Bad database line doesn't have 6 elements: %s" % (line)
                 error_enum = db_line[0]
                 implemented = db_line[1]
                 testname = db_line[2]
-                error_str = db_line[3]
+                api = db_line[3]
+                error_str = db_line[4]
+                note = db_line[5]
                 db_dict[error_enum] = error_str
                 # Also read complete database contents into our class var for later use
                 self.error_db_dict[error_enum] = {}
                 self.error_db_dict[error_enum]['check_implemented'] = implemented
                 self.error_db_dict[error_enum]['testname'] = testname
+                self.error_db_dict[error_enum]['api'] = api
                 self.error_db_dict[error_enum]['error_string'] = error_str
+                self.error_db_dict[error_enum]['note'] = note
                 unique_id = int(db_line[0].split('_')[-1])
                 if unique_id > max_id:
                     max_id = unique_id