introduced SubContexts to deal more gracefully with propagations;
documentation.