Releasing GIL for C++ methods
Created by: siranipour
Not too sure if what I've done is correct, but it seems to be having the desired effect. Essentially it now releases the python GIL when you call a swig method.
I now see a marked improvement since I can run MakeReplica
using concurrent.futures.ThreadPoolExecutor
almost twice as fast.
See https://github.com/swig/swig/issues/927 and section 2.6 of http://www.swig.org/Doc3.0/SWIGDocumentation.pdf