Refactor core action to return a parser instance based on the response body

This can be pulled with the Response class in place.