Drop gil whenever possible

mtbl has a lot of slow functions that do not affect Python objects and it doesn't drop the global interpreter lock while executing them.  This has a performance impact when running with multiple threads.