Clarify alternatives.when(). Fix when(is). Closes #339, Closes #337