Cache PathId.__hash__
Cache PathId.__hash__

PathId instances are hashed very frequently, so caching the result of
`__hash__` makes a small, but measurable difference.

edgedb/edgedb,edgedb/edgedb,edgedb/edgedb