Use opresult
Fix usage of OpResult
Add methods to help transition