Now with primary keys!

This required a slightly more complicated function for turning the
table-creator strings into strings containing names of
attributes/columns only. The insert_data function and its loop-based
equivalent now use the string of attribute/column names to specify
exactly which columns data is being inserted into (was able to get away
without this before certain columns were designated as primary keys).