apply 2to3
avoid cyclig dependency
revert __metaclass__ construction