> Closes #5926
This PR adds support for attributes on module level constants.
This required adding the corresponding contexts in the context listener and actually attaching them to the generated `ValuedDeclaration`s.
Since only module constants can have attributes, a further level has been added in the grammar to reflect the distinction.