This is public so that you may define your own extensions on capsule.
typedef CapsuleCreationConvenience = Capsule<T> Function<T>(Capsule<T>);