Prevent geometry flashing when re-batching primitives

When we need to rebatch "static" primitives, for example because an object has gone from solid to translucent or the data sources performed an update; the old primitives would be removed but the new primitives would not show up until they were ready.  This caused it to look like the data was flashing on/off as it was being processed.

This change simply keeps the old primitive around until the new one is ready.  It also needed to tweak `Primitive.show` in order to actually cause geometry to be created when the show was set to false.

Also use `Primitive.ready` where appropriate instead of the private variable.
Merge pull request #1902 from AnalyticalGraphicsInc/flashing-geometry

Prevent geometry flashing when re-batching primitives