use exception classes for errors

This handles conversion errors (R to Perl and Perl to R) as well as
R interpreter errors.

Adds a dependency on the `failures` module.