cleaned up and extended experiment framework so we can evaluate on multiple problems in one go