docs: @SuppressWarnings("unchecked")
      public <T> T processElement(Element element) throws ConfigurationException
      {
          String namespace = $(element).namespaceURI();
          String tagName = $(element).tag();
          ElementHandler<?> handler = handlers.get(new HandlerId(namespace, tagName));
          if (handler != null)
          {
              Object o = handler.processElement(this, element);
              return (T) o;
          }
          throw new ConfigurationException("No Handler registered for element named [" + tagName
                      + "] in namespace: [" + namespace + "]");
      }