Hmm, now that I think about it I'm not sure why I didn't do this. I think I was explicitly trying to make it such that it's near impossible to create an `Arguments` structure, but this kinda makes way more sense.

After writing a few lines of this, I like this approach a lot more.