addRow and addRows now actually work (with integration tests), added some other helpful methods along the way