Debug/explain fixes:

1. Immutable models
2. DebugResults as algebraic data type