Isolate test site object when class is not cached

The recent token changes included new tests which modified the
Site version method.  Reinstating the original method creates
a pickling error on the site object, as it is cached throughout
the test suite.

This change allows a test class to have Site objects which are used
by the one test class only, and all other test class share the cached
Site objects.

Change-Id: I61474dff1b3fa53464c3a0714eb4589b935b79fa