Add support for original_invoice link on refund invoices

Refactor how associations are created in order to support the
class_name option for the original_invoice belongs_to association.
Instead of being an array of resource class names for each type
of relation, making it an array of Association objects containing
a relation type, resource class name, and an options hash for other
settings like class_name if the resource class of the object does
not match the resource class name of the association.