@Override
	public void handleStartTag(HTML.Tag tag, MutableAttributeSet attrs, int pos) {
		logger.info("StartTag: " + tag);
		HTMLComponent comp = null;
		if (isWantedComplexTag(tag)) {
			comp = HTMLComponentFactory.create(tag, attrs);
		}
		// If not a known start tag, but not utterly trivial, make generic tag.
		if (comp == null) {
			if (totallyIgnoreThisTag(tag)) {
				return;
			}
			comp = new GenericHTMLContainer(null, tag.toString());
		}
		logger.info("DOING COMPLEX: " + comp);
		pushComponent(comp);
		handleCommon(comp);
		
		if (comp instanceof HTMLAnchor) {
			currentPage.addAnchor((HTMLAnchor)comp);
		}
		if (comp instanceof HTMLForm) {
			currentForm = (HTMLForm)comp;
			currentPage.addForm(currentForm);
		}				
		if (comp instanceof HTMLTitle && ((HTMLPageImpl)currentPage).getTitle() == null) {
			((HTMLPageImpl)currentPage).setTitle((HTMLTitle)comp);
		}

		return;
	}