SmartPointer Comparable

SmartPointer objects are now comparable for equality (they compare equal
if their internal pointers point to the same memory address, otherwise
they compare unequal).