Vb support for order preserving

This is capable of preserving the order of the parameters when adding a Null check.
Currently there is a bug somewhere in it that doesn't always put them on their on line.

It's not pretty but it sort of works.