use WeakRefFinalizer metaclass stub for python 3.4 or later

2to3 doesn't convert the metaclass settings when they're conditionalized
and this way consumers shouldn't have to make code changes.