fix bug in table.py when specifying both column header text and color

row offset in table construction function was missed in case of specifying both text and color for column headers
table.py: added comments to previous change and fixed other bugs

1) Comment to clarify what we are offsetting and why.

2) Switched `rows' and `cols' in code to create header rows with
   color but no text, so our lists of empty strings have the
   right length.
table.py: clarified documentation
WIP: added some basic image tests for tables with headers. tests need to be tested
fixed table test script and images