Moved decorators out of mixin, along with some JSDoc updates.