This commit refactors the syntax of "ugly" attribute/type formats to not use use
strings for wrapping. This means that moving forward attirbutes and type formats
will always need to be in some recognizable form, i.e. if they use incompatible
characters they will need to manually wrap those in a string, the framework will
no longer do it automatically.
This has the benefit of greatly simplifying how parsing attributes/types work, given
that we currently rely on some complicated nested parser logic which is quite problematic
for a myriad of reasons; unecessary complexity, (we create a nested source manager/lexer/etc.),
diagnostic locations can be off/wrong given string escaping, etc.