def define_reader_method(attribute, method_name, visibility)
      define_method(method_name) { attribute.get(self) }
      send(visibility, method_name)
    end
def define_reader_method(attribute, method_name, visibility)
      define_method(method_name) { attribute.get(self) }
      send(visibility, method_name)
    end
Defines an attribute reader method

 @param [Attribute] attribute
 @param [Symbol] method_name
 @param [Symbol] visibility

 @return [undefined]

 @api private