## Is your feature request related to a problem?

/api/person/merge currently performs a merge of two people. This logic is duplicated between app and plugin-server, badly.

## Describe the solution you'd like

Avoid duplicating, send a message to plugin-server

## Describe alternatives you've considered

Duplicating tricky and race-condition-heavy logic.

## Additional context

cc @yakkomajuri this is worth adding to team extensibility backlog - pretty sure this will cause bad correctness issues.

#### *Thank you* for your feature request – we love each and every one!

posthog/api/test/test_person.py
person = person_factory(
                team=self.team, distinct_ids=["person_1", "anonymous_id"], properties={"$os": "Chrome"},
            )
            event_factory(event="test", team=self.team, distinct_id="person_1")
            event_factory(event="test", team=self.team, distinct_id="anonymous_id")
            event_factory(event="test", team=self.team, distinct_id="someone_else")
            response = self.client.delete(f"/api/person/{person.pk}/")
            self.assertEqual(response.status_code, status.HTTP_204_NO_CONTENT)
            self.assertEqual(response.content, b"")  
            self.assertEqual(len(get_people()), 0)
            self.assertEqual(len(get_events()), 1)
            response = self.client.delete(f"/api/person/{person.pk}/")
            self.assertEqual(response.status_code, status.HTTP_404_NOT_FOUND)
        def test_filter_id_or_uuid(self) -> None:
            person1 = person_factory(team=self.team, properties={"$browser": "whatever", "$os": "Mac OS X"})
            person2 = person_factory(team=self.team, properties={"random_prop": "asdf"})
            person_factory(team=self.team, properties={"random_prop": "asdf"})
            response = self.client.get("/api/person/?id={},{}".format(person1.id, person2.id))
            response_uuid = self.client.get("/api/person/?uuid={},{}".format(person1.uuid, person2.uuid))
            self.assertEqual(response.status_code, 200)
            self.assertEqual(response.json(), response_uuid.json())
            self.assertEqual(len(response.json()["results"]), 2)
        def test_merge_people(self) -> None: