First pass at changing parsing to allow returning values with observations (info, warnings, errors)
This enables partial success and simple panic mode error recovery