fr:box-select: no scrollbar placeholder in view mode
Minor: use toInt
Minor: indent
Tests: support replace="all" with echo:
Test: Use replace="all" and clean up
Refactor: move to Scala for further work
Implement #1650 "Unify recalculate and revalidate"
Implement #1533 "Required and type MIPs don't count as failed validations"

- BindNode stores failed type/required validations
- static MIPs all have a ValidationLevel
- Constraints → Validations
- return all failed validations to control
- test
Rename StaticBind → ValidationLevels