Moved error to base/mc. Cleaned up code over there.
Switch back to error for errors. Clean up code and test cases.