It might even make sense to drop the hardwired `table` prefix for the ID string and allow for the user to put in whatever they want, with `None` defaulting to `'table{0}'.format(id(self))`.