/// <summary>
 /// Requires a string is not null or white space
 /// </summary>
 /// <param name="val"></param>
 /// <param name="key"></param>
 /// <returns></returns>
 public Contract <T> IsNotNullOrWhiteSpace(string val, string key) =>
 IsNotNullOrWhiteSpace(val, key, FluntErrorMessages.IsNotNullOrWhiteSpaceErrorMessage(key));