Was the removal of getPath() required here? Looks to me that we now rely on a toString that still calls the getPath. I'd prefer being explicit if possible, what do you think?