### Apache Airflow Provider(s)

pagerduty

### Versions of Apache Airflow Providers

apache-airflow-providers-pagerduty==2.0.1

### Apache Airflow version

2.1.4 (latest released)

### Operating System

macOS catalina

### Deployment

Virtualenv installation

### Deployment details

_No response_

### What happened

Currently, the PagerdutyHook can be used to access two API's: 
- Events API: interface to send alerts. Needs only  a integration key/routing key/Events API key. (https://developer.pagerduty.com/docs/get-started/getting-started/#events-api)
- Pagerduty API: interface to interact with account data, project setup, etc. Needs only a Pagerduty rest API Key or account token. (https://developer.pagerduty.com/docs/get-started/getting-started/#rest-api)

In order to interact with the API's, the PagerdutyHook uses two attributes that refer to these api keys: 
- `token`:  Refers to the account token/rest API key. This attribute is retrieved from the `Password` field in the connection or can be set at initialization of a class instance by passing it into the init method of the class.  In the __Init__ method, its value is asserted to be not `None`. The token is **not used** for sending alerts to Pagerduty.
- `routing_key`: Refers to the integration key/Events API key. This attribute is retrieved from the `Extra` field and is used in the `create_event` method to send request to the Events API. In the `create_event` method the value is asserted to be not `None`.

As a result if users want to use the hook to only send events, they will need to provide a connection with a random string as a password (which can't be None) and the actual integration key in the `extra` field. This to me makes no sense. 

**Proposed solution:** Rather than having the two api's in a single hook, separate them into two different hooks. This increases code simplicity and maintainability.

### What you expected to happen

_No response_

### How to reproduce

_No response_

### Anything else

_No response_

### Are you willing to submit PR?

- [X] Yes I am willing to submit a PR!

### Code of Conduct

- [X] I agree to follow this project's [Code of Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)

tests/providers/pagerduty/hooks/test_pagerduty.py
session.add(
            Connection(
                conn_id=DEFAULT_CONN_ID,
                conn_type='http',
                password="pagerduty_token",
                extra='{"routing_key": "route"}',
            )
        )
        session.commit()
    @provide_session
    def test_without_routing_key_extra(self, session):
        session.add(
            Connection(
                conn_id="pagerduty_no_extra",
                conn_type='http',
                password="pagerduty_token_without_extra",
            )
        )
        session.commit()
        hook = PagerdutyHook(pagerduty_conn_id="pagerduty_no_extra")
        assert hook.token == 'pagerduty_token_without_extra', 'token initialised.'
        assert hook.routing_key is None, 'default routing key skipped.'
    def test_get_token_from_password(self):
        hook = PagerdutyHook(pagerduty_conn_id=DEFAULT_CONN_ID)
        assert hook.token == 'pagerduty_token', 'token initialised.'
    def test_token_parameter_override(self):
        hook = PagerdutyHook(token="pagerduty_param_token", pagerduty_conn_id=DEFAULT_CONN_ID)
        assert hook.token == 'pagerduty_param_token', 'token initialised.'
    @requests_mock.mock()
    def test_get_service(self, m):