duplicate item correction, bug fixes

- Added better duplicate item correction - there are still some issues
with some attributes not passing correctly but it appears to work for
the majority of cases
- changed the knownItems to a Dictionary instead of Hashtable
- added a recursive drilldown to try and figure out unique lookups and
names for the element in question
- Fixed CSClassBuilder to use C# parameter variable formats
- Added elementToXmlString to HtmlAsXml so an individual jQuery
statement can have it's returned element parsed into an xmlstring for
back-end processing
- Added a Cleanup method to Otto