Python 3.4+ release

Rewritten to use Python 3.4 and upward