Sync definitions with DWARF4 + DWARF5 drafts.

- Add tag, attribute and form definitions from DWARF4, as well as some
  from DWARF5 draft proposals that gcc4.7 is now emitting.
- Add corresponding attribute getter/setters and class definitions.
- Add appropriate attribute class definitions.
- Update tag name and attribute name retrieval accordingly for the
  above.
- Implement barebones DIECallSite/DIECallSiteParameter.
DIESubprogram: Add parsing for main subprogram attribute.

- Will be used later to recognize the main function of a given program.
Add parsing for several new attribute classes.

- Collectively the previous set of changes get us minimally parsing
some of the new DWARF4 output from gcc 4.7 as well as some of the
draft DWARF5 extensions, which allows us to handle such executables
a bit more gracefully. Not all of the new information is made use of
as yet though. Should resolve #9799.