code: @SuppressWarnings("unchecked")
  	public static <T> T newInstance(Class<?> aClass, Class<?>[] parameterTypes,Object[] initargs) 
  	throws SetupException
  	{
  		try
  		{
  			//Get constructor
  			Constructor<?> constructor = aClass.getConstructor(parameterTypes);
  								
  			return (T)constructor.newInstance(initargs);
  		}
  		catch (Exception e)
  		{
  			throw new SetupException(e);
  		}
  	}
docs: Use a constructor of the a class to create an instance
  @param aClass the class the create
  @param parameterTypes the constructor parameter types
  @param initargs the constructor initial arguments
  @param <T> the class type
  @return the initiate object
  @throws SetupException when internal error occurs