First changes to protractor2.cs code. It is highly experimental and somewhat messy. I will clean it up. In the meanwhile, Deal With It(tm).