problem
pub fn in_context_of<O, B>(message: &str, body: B) -> Result<O, Problem> where B: FnOnce() -> Result<O, Problem>,
Executes closure with problem_while context
problem_while