Remove Rice, Release GVL

Hi,

I removed Rice as a development dependency and added code to release the GVL around `diff_main`.  I need to do many expensive diffs, so I'd like to do them in parallel.

Also, I got rid of the methods that mutate arrays. I'd rather just get a new array back than mutate the parameters.  I hope this is OK!

Thanks!