module Safe

auto-create/builds struct-like class.

Example:

Event.new( :Roll, :id, :rolled )
   auto-creates/builds:

 class Event; end
 class Roll < Event
   def initialize( id, rolled )
     @id     = id
     @rolled = rolled
   end

   def id()     @id; end
   def rolled() @rolled; end
 end

 pp roll = Roll.new( 1, 2345 )   #=> #<Roll @id=1, @rolled=2345>
 pp roll.id                      #=> 1
 pp roll.rolled                  #=> 2345