Update the API caller

The API caller was using the `$params` variable incorrectly. This variable is mean to be used as params for the WP_HTTP_API, not as query params/body arguments on the request.

The caller now parses out the given params and appends them as query args on the URL or as the request's body based on the method defined for the given endpoint.

Given an invalid method (not GET or POST) on the endpoint, the caller will bail with a WP_Error