Cleaning up Code
From my various exploits into the code that writes and updates the AST node, there's become a lot of useless code that has built up. So I went through and cleaned things up, leaving minimal amounts of code that were actually necessary for updating things.
On that note, anything that happens when the project is built for the very first time is now labeled as SYSTEM generated. This can later be updated with the appropriate authors, so if it was built as a part of the initial set-up, the program is the author, where as if it's a character that is dragged into the world, the author will be the user.
Code that is dragged into the programming space is also now labeled as having been originated from the USER. This covers all of action-ordering boxes, say, think, walk, move, etc. It also updates any parameters that are a part of the method declaration. One particular problem that I have run into is that when something is copied back in from the clipboard, and the parameters are changed, the AST nodes are set to UNKNOWN, so that will be something I need to look into.
COPIED already has been working since it labels the node when it is taken off of the clipboard and dropped into the programming space.
Finally, I have been starting to find places where the code from remixes is inserted into the programming space, so I just need to label and start testing these areas to ensure that I am labeling the correct sections of code as REMIXED.