UUID models are immutable, so cache them

Converting to and from base 36 for getAlphadecimal() is > 20x
more expensive than getHex().  Calculating cache keys, due to
their use of getAlphadecimal, was showing up as a hotspot in
profiling due to this.

This is still more expensive than i would prefer, we should
consider making getHex public again and only using
getAlphadecimal for display purposes.

Change-Id: I87c8a76d44b918d2f80b256e56e41a759ad853a1
Merge "UUID models are immutable, so cache them"