CRM-12720. Optionally accept processor_id for IPN

If multiple payment processors of the same type are enabled, IPN doesn't work because it calls back with the payment processor (type) name rather than a unique identifier for the payment processor used in this contribution.

This patch allows IPN to accept a processor_id in place of processor_name in IPN requests, enabling multiple processors of the same type. If processor name is supplied, it should function as before.