Add fraud reporting methods

r? @cosn 

Add methods for reporting charges as safe/fraudulent and including reasons in refunds.
The other bindings have the convenience methods (discussed whether to have
convenience methods at all with Amber), so having them here would be at
least for consistency. These worked with my test account from a driver
script, but I'll try to move them to the charge client.

On Mon, Dec 15, 2014 at 7:14 PM, Cosmin Nicolaescu <notifications@github.com
> wrote:
>
> In charge/client.go
> <https://github.com/stripe/stripe-go/pull/43#discussion-diff-21875592>:
>
> > @@ -70,6 +70,14 @@ func (c Client) New(params *stripe.ChargeParams) (*stripe.Charge, error) {
> >  	return charge, err
> >  }
> >
> > +func MarkAsFraudulent(id string) (*stripe.Charge, error) {
> > +	return Update(id, &stripe.ChargeParams{FraudDetails: map[string]string{"user_report": "fraudulent"}})
> > +}
> > +
> > +func MarkAsSafe(id string) (*stripe.Charge, error) {
> > +	return Update(id, &stripe.ChargeParams{FraudDetails: map[string]string{"user_report": "safe"}})
> > +}
>
> why do we need methods at all? If we give them the options on the charge,
> you can do that directly. If notthing else, these should be on the
> ChargeClient rather than global. As-is, I don't think this would work with
> the global client anyways
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/stripe/stripe-go/pull/43/files#r21875592>.
>