Actually, after sleeping over it I think it doesn't really matter where AnalysisResult lives. The whole code needs more work so figuring this out for just one class doesn't really buy us anything.

I'm fine keep this as-is.