use "with" after setting up the class

The Moo-ification work reverted bca6c748, which was in place to
prevent a problem with the attribute trying to overwrite a method
from a role.  This commit basically reapplies that fix.
v1.300006

          re-fix the problem with attribute accessors and role methods
          clashing, previously fixed in 0.102360