code: public static AbstractConfig getConfiguration(final String[] classes) throws ClassNotFoundException, InstantiationException, IllegalAccessException {
          AbstractConfig conf = null;
          for (String each : classes) {
              final Class<?> clazz = Class.forName(each);
              final Class<?> superclazz = clazz.getSuperclass();
              if (superclazz.equals(AbstractConfig.class)) {
                  if (conf == null) {
                      conf = (AbstractConfig) clazz.newInstance();
                  } else {
                      throw new IllegalArgumentException("Only one config-class allowed");
                  }
              }
          }
          if (conf == null) {
              conf = new StandardConfig();
          }
          return conf;
      }
docs: Getting a configuration out of the class-files. If none is avaliable, the {@link StandardConfig} is given back.
  The {@link AbstractConfig} instance has to have a parameter-free constructor.
  
  @param classes to be examined. Only one instance of an {@link AbstractConfig} is allowed.
  @return the {@link AbstractConfig} instance or the {@link StandardConfig} if none was found.
  @throws ClassNotFoundException thrown if a class was not found.
  @throws InstantiationException thrown if the {@link AbstractConfig} instance was not able to be instaniated
  @throws IllegalAccessException thrown if the {@link AbstractConfig} instance was not able to be instaniated