The constant is from a table of known good multiplicative random number generators in Knuth, and produces extraordinarily good hashing. The VisualWorks hash functions for String and SequenceableCollection work well for many problems, but not for all. I don't think there is a universal solution that works well in all cases. Algorithm books like Knuth and Sedgewick explain various hashing techniques. VisualWorks uses perhaps the simplest one of all, which Sedgewich classifies as open addressing with linear probing.
GemStone uses separate chaining with hash buckets.
The original Smalltalk-80 had performance problems with identity hashing, with its general hash algorithm, and with its String hash method in particular. Many other hash methods were inadequate, with some of the bad ones remaining even in VW 5i2. Here's a brief history of the improvements made to hashing in this Smalltalk dialect. It's come a long way. Sections 3-5 show that it has farther to go.