Don't use Exception, use StandardError

Don't use Exception, use StandardError

It's bad Ruby practice to have Error classes inherit directly from
Exception, or to raise instances of Exception itself. It is highly
recommended that any custom error classes inherit instead from
StandardError. StandardError is also the go-to exception class for when
you need to raise an error without a custom class.

Additionally, Invalid XML seems to be more of a ValidationError, not a
StandardError. Raise accordingly. If I'm misunderstanding this bit,
let me know and I'll gladly revert the second commit.

Signed-off-by: David Celis <me@davidcel.is>