Correcty handling using statements

 - This inserts `System.ArgumentNullException` if there is no `System` using directive.
 - This inserts `ArgumentNullException`  if there is a `System` using directive.

> This will probably require a rebase dependening on which pending PR will make it in.