fixups and a toString function