public <T extends Throwable> @This @NonNull ExceptionController<C> register(
            final @NonNull TypeToken<T> exceptionType,
            final ExceptionHandlerRegistration.@NonNull BuilderDecorator<C, T> decorator
    ) {
        return this.register(decorator.decorate(ExceptionHandlerRegistration.builder(exceptionType)).build());
    }
Decorates a registration builder and registers the result.
<p>
The ordering matters when multiple handlers are registered for the same exception type.
The last registered handler will get priority.

@param <T>            the exception type handled by the exception handler
@param exceptionType  the exception type handled by the exception handler
@param decorator     the builder decorator
@return {@code this} exception controller
cloud-core/src/main/java/org/incendo/cloud/exception/handling/ExceptionController.java