So after some more poking and prodding I discovered that the stop function within nessus.py wasn't well thought out (and doesn't actually do anything useful).
I've added a stop function to the XMLRPC interface and extended nessus.py to leverage it. I'll be contributing these changes back to the project. (Hopefully they'll actually publish the updates, though there appear to be some un-addressed issues in their bug tracker )
This thread can be closed or ignored.