add __repr__, move old __repr__ to str, make stack kwarg