added HtmlElement class and refactored html classes