Use raw pointers as the map's keys

When a smart pointer is used as the key to a std::map, searching the map
using a raw pointer is very error-prone since (prior to C++14), all
std::map methods expect a key_type object to be created. To fix this, a
raw pointer is used as the key and the smart pointer is stuffed into the
value beside the Python object.

This is a latent bug that could be triggered by using
GetObjectFromPointer which it appears as though only SIP bindings, and
ParaView Qt stuff ever used.

Change-Id: I42cba81053908befe2c1eb4cbdb1fea676b79ce1
BUG: Fix NULL dereference in std::copy argument

Revealed by failed otherEmptyCell test on Debug Visual Studio build

Change-Id: I815eac0bdddd6f9cf1cd4a4bfaca8ecbbc61bc5f
Merge topic 'fix-python-util-object-tracking' into master

269cbea1 Use raw pointers as the map's keys
Merge topic 'fix-otherEmptyCell-test-timeout' into master

a847fb8a BUG: Fix NULL dereference in std::copy argument
Fix Tcl/exodus build errors.

Install, but don't wrap, the templated in-situ files.

Change-Id: I2b2304a58f1d0b8fdc1198c275c80b2caca33a9d
Merge topic 'fix-exodus-tcl' into master

f1923b8c Fix Tcl/exodus build errors.