This is a huge change, but will allow us to remove all the Argument checks in favor of better performance. Also a great chance to go through the codebase and remove everything we don't actively use.