Pull XModule attributes out into a mixin that can be applied to xblocks

@nedbat, @sarina: Review?

Things to look at:

1. Verify that any attribute removed from XModule or XModuleDescriptor is available in XModuleMixin
2. Make sure that XModuleMixin is added to the LMS and Studio configuration
3. Verify that attributes in XModuleMixin depend only on the XBlock interface or other XModuleMixin attributes