Refs #10135. Added python unit tests

Since it appears to be impossible to export shared_ptr<const T> to python, the pointer from the factory has to be const-casted before it's returned.