Adds an array of data into an existing table.
if there are no existing tables, will create one with default
attributes.
if custom_table isn't specified, it will use the last table created,
if it is specified and doesn't exist the function will return false.
if a set of keys have been specified, the function will check each
required key is present in the incoming data. If this data is missing
the current tables default value will be used.
if any key in the incoming data begins with '#sep#', the function
will add a separator across the table at this point.
once the incoming data has been sanitized, it is added to the table.