Cleaned up error reporting

Still wondering why some diagnostics show up twice, e.g. the 'variable
"ERR" does not exist.' message in bernoulli_with_statement_errors.stan
test case.