Added support for DoReferenceTransaction

This also required me to allow for a request of None in the PayPalNVP init() method. In the case of billing agreements, the call to PayPal is not necessarily tied to a user request. Case in point, we are going to use this for automated monthly billing.

Ultimately, I think it would be better to remove the requirement of request everywhere, defaulting it to None, but this would be a much larger, possibly backwards incompatible change.