HTMLDefinitionNode.Clone()

Added a proper member wise deep copy instead of a construct and decode
pass.
HTMLDefinitionNode()

Changed the default constructor so it only inits the m_name member var
this is in conjuction with Clone operation. Also the reason this
constructor is private because it leaves the object in a not fully
constructed state.