Test under all py2_pickle{1,2,3} and py3_pickle3 ZODB kinds + fix discovered issues
Hello @jerome, For ZODB/go and WCFS, in order to support Python3 and Python2 with recent ZODB5, I need to extend generated test databases to cover all ZODB kinds instead of only ZODB/py2 + pickle protocol=2 we had before. This resulted in `run_with_all_zodb_pickle_kinds` utility inside gen_testdata.py and zodbtools also becoming well tested under all kinds of ZODB databases: py2: ZODB 4 and ZODB5 < 5.3 (pickle protocol 1) py2: ZODB 5.3 (pickle protocol 2) py2: ZODB ≥ 5.4 (pickle protocol 3) py3: ZODB4 and ZODB5 (pickle protocol 3) Please find the patches that do that for zodbtools attached. Some problems popped up due to extended testing coverage and they are fixed as well. Please see individual patches for details. Kirill /cc @vnmabus, @levin.zimmermann /reviewed-by @jerome /reviewed-on nexedi/zodbtools!29