plugin as a function not working
### Issue Description

The [documentation](https://www.apollographql.com/docs/apollo-server/api/apollo-server#plugins) says the following:
> An array of plugins to install in your server instance. Each array element can be either a valid plugin object or **a zero-argument function that returns a valid plugin object**.

It appears that passing a function for a plugin doesn't work on @apollo/server v4 (it did work on v3). I looked at the code (e.g. [here](https://github.com/apollographql/apollo-server/blob/d7e9b97595b063f1e796ec4449850a16d19e8b18/packages/server/src/ApolloServer.ts#L412)), and it indeed doesn't seem to be taking into account that a plugin could be a function. Maybe the documentation (and migration guide) should be updated to reflect that?

### Link to Reproduction

N/A

### Reproduction Steps

_No response_