I decided to override it because it has a default option (`options = {track_type: 1}`).    I decided to add the default option since the `add_creditcard` method from the CP gateway requires that option.  I also renamed the `paysource` argument to `creditcard`, since only credit cards can be used here.  I do not think it's necessary to override the`purchase` method, but it makes the code a bit clearer.  I could clean it up by using the super() method.