Inline Rust and Assembly safety

Part of Grease's goal is to remain simple and safe, while exposing useful features to developers. This can sometimes mean that we are allowing devlopers/users to do things that are not entirely safe. Inline Rust and (mainly) assembly are examples of features that fall in this category. They can be very useful, but they can also be dangerous if basically instructing your CPU to do things incorrectly. This can lead to logical errors that may leave vulnerabilities that malicious actors may try to take advantage of.

To mitigate this, while leaving these features exposed to users, we need our tooling to adequately inform a developer of the dangers they are potentially introducing when utilizing these features. For example, Rust has a macro to allow the use of "dangerous" features, unsafe. You must encapsulate potentially unsafe code in these unsafe blocks, otherwise your project will refuse to build. This seems like a good way to ensure developers are aware of what they are doing without limiting the features that they have available to them. We should implement a similar approach to Grease as we get closer to being production-ready and releasing our v1.0.

Marking this as a "Bug", considering how dangerous I feel it would be to leave inline Rust and Assembly in the state that it is currently in if this hits the main branch. For all intents and purposes, I consider this to be undesirable/unintended behavior—in other words, a bug.