add tox to test against multiple python versions
add python3 compatibility for the generic server layer