restore parse.cpp
update from new tarball
new error handler with customized message