Adds a sample area file to run
Adds a name check on Section#initialize

When Section is instantiated, checks self.id against the section name
in the first line of the section. (If the first line doesn't contain
the #SECTION_NAME header, it skips this check.)

The verifier won't ever instantiate the wrong class for a given block
of text, but it will raise an ArgumentError if a user manually
instantiates a section with data meant for another section.

Also instead of each class storing a @id instance var and having a
getter, Section#id returns self.class.name.downcase, and AreaHeader
and AreaData override it to return "area" and "areadata" respectively.

Also Section#initialize is in a position where it can slice off the
first line if necessary.