Handle nil values in secure_compare util

It's possible to have a nil value for the signature when checking a webhook is valid (although obviously not if its GoCardless that sent the webhook). We should handle these in the `secure_compare` method.