Moved Modifier, Section and Template

- Moved case classes out of Parser.scala and into individual files
- Added documentation for Template