Here, you can ditch classes altogether:

  class Module
    def new(*args, &blk)
      mod = self
      klass = Class.new { include mod }
      const_set( "#{name}Class", klass )
      klass.new(*args, &blk)
    end
  end

Note, this is just off the top of my head so don't expect it to work
"out-of-the-box" but you get the idea.

This would be a perfect solution except but there is one limitation:
the aweful Dynamic Module Inclusion Problem.

T.