text: Title: [Proposal] Allowing environments with different Box action/observation space limits in a vector environment
  Body: ### Proposal
  
  https://github.com/Farama-Foundation/Gymnasium/blob/8333df8666811d1d0f87f1ca71803cc58bcf09c6/gymnasium/vector/sync_vector_env.py#L251-L266
  https://github.com/Farama-Foundation/Gymnasium/blob/8333df8666811d1d0f87f1ca71803cc58bcf09c6/gymnasium/vector/async_vector_env.py#L576-L596
  
  Currently, these methods checks if all the observation and action spaces in a vector environment are identical, and raises an error if they are not. I'm assuming this is the case because we want to ensure that we can stack the observations and actions into one numpy array. I'm proposing a change to allow differences in the observation and action spaces as long as the shapes are consistent  (e.g. the values in the `low` and `high` portions of a Box space).
  
  The change can be implemented with an optional parameter to enable/disable it when creating the vector environments to preserve current default behaviours for now.
  
  ### Motivation
  
  I want to vectorize environments with different action space boundaries but the current implementation of vector environments does not allow for that.
  
  ### Pitch
  
  _No response_
  
  ### Alternatives
  
  _No response_
  
  ### Additional context
  
  _No response_
  
  ### Checklist
  
  - [ ] I have checked that there is no similar [issue](https://github.com/Farama-Foundation/Gymnasium/issues) in the repo
  