Added an InvalidFile exception

See https://bugs.launchpad.net/oq-engine/+bug/1171736. I fixes assert_valid so that it returns an InvalidFile exception, which an error message that includes the filename. While I was at it, I have also changed it to
use by default a parser compatible with ElementTree.