ok... I'd only throw a IllegalStateException on createControllerInstance (which should be renamed since it doesn't create anything :P)