New Features:
* Added support for modeling inheritance in data structures
* Created a new validator that verifies definitions in the context have unique names
* New Plugin Contribution system
* Extended the AaC DSL Language-Server Protocol Features:
* Added Goto Definition for definitions, root keys, and enum values in AaC Files
* Added Find References for definitions and root keys in AaC Files
* Added Rename for definitions in AaC Files
* Added Hover support for definition-names in AaC Files
* Added support for updating definitions
* Added support for deleting definitions
* Added support for gracefully handling definitions with undefined, malformed fields
Fixes:
* The parser now correctly calculates definition lexeme line positions within the AaC file
* Fixed some of the clutter present in PlantUML diagrams
* Fixed some file pathing issues on macOS
* Output for the `help-dump` command is now sorted
* Fixed some issues supporting the use of periods '.' in definition names
* Fixed Gen-Protobuf style and format issues, particularly when spaces are used in definition names
Misc Changes:
* Overhauled the Template Engine
* Added a minimum Python 3.9 check. AaC will present the user with an error message and quit.
* Added a new RESTful API plugin
* Added support for CRUD operations on definitions in the ActiveContext
* Added support for executing AaC plugin commands
* Added support for managing AaC files within the server's current working directory.
* Updated the following validator plugins:
* `Required fields` is updated to allow the user to specify which fields are required
* `Type references exist` is updated to allow users to specify which fields are validated
* Added a new plugin that supplies query-able model references
* Added better error message support for jinja templates
* Added UUID support for Definitions in order to support the changing of Definition names, the previous unique identifier
* Added support for Validator plugins to begin providing varying levels of feedback including INFO, WARNING, and ERROR
* Added support for validating individual definitions in a file using the optional argument `--definition_name` in `aac validate`
Contributors:
* Alex Monnet <Coffee2Bitsusers.noreply.github.com>
* Cameron Chaparro <cvchaparrousers.noreply.github.com>
* Charles Blackard <charles.blackardusers.noreply.github.com>
* Jondavid Black <jondavid-blackusers.noreply.github.com>