class Ronn::Document

def initialize(path=nil, attributes={}, &block)

for any writeable attributes defined on this class.
the intialize method returns. The attributes hash may contain values
calling the block. The document is loaded and preprocessed before
Create a Ronn::Document given a path or with the data returned by
def initialize(path=nil, attributes={}, &block)
  @path = path
  @basename = path.to_s =~ /^-?$/ ? nil : File.basename(path)
  @reader = block || Proc.new { |f| File.read(f) }
  @data = @reader.call(path)
  @name, @section, @tagline = nil
  @manual, @organization, @date = nil
  @fragment = preprocess
  attributes.each { |attr_name,value| send("#{attr_name}=", value) }
end