Steps Towards Programs that Manage Uncertainty