Use pickle protocol 0 for 2/3 compat
Improve docs
Refactor autodetection