code: public <T extends ICalComponent> List<T> getComponents(Class<T> clazz) {
  		return new ICalComponentList<T>(clazz);
  	}
docs: Gets all sub-components of a given class. Changes to the returned list
  will update the parent component object, and vice versa.
  @param clazz the component class
  @param <T> the component class
  @return the sub-components