even cleaned up some internal stuff.  V 2.0