text: Title: RFC: General mixture distribution
  Body: A quick search for mixture distributions in numpyro only turns up examples using `Categorical` in conjunction with an array of distributions. Since sampling from discrete distributions is not always desirable, I have implemented a quick general purpose mixture distribution with continuous log probability.
  
  ```python
  class Mixture(Distribution):
      arg_constraints = {}
  
      def __init__(self, distributions, weights, validate_args=None):
          self.distributions = distributions
          self.weights = weights
          self.log_weights = jnp.log(weights)
          self.choices = dist.Categorical(probs=weights)
          
          # ensure all child distributions have the same event and batch shape
          assert len(set(d.batch_shape for d in distributions)) == 1
          assert len(set(d.event_shape for d in distributions)) == 1
          
          super().__init__(
              distributions[0].batch_shape,
              distributions[0].event_shape,
              validate_args
          )
  
      @property
      def support(self):
          return self.distributions[0].support
  
      def sample(self, key: PRNGKey, sample_shape=()):
          choice_key, sample_key = jax.random.split(key)
          choice_keys = jax.random.split(choice_key, np.prod(sample_shape))
          choices = self.choices.sample(key, (np.prod(sample_shape),))
          samples = jnp.array([
              self.distributions[n].sample(k) for n, k in zip(choices, choice_keys)
          ])
          
          return samples.reshape(sample_shape + self.batch_shape + self.event_shape)
  
      def log_prob(self, value):
          log_probs = jnp.array([d.log_prob(value) for d in self.distributions])
          # have to flip axes here to make arrays broadcast correctly
          return logsumexp(log_probs.T + self.log_weights, axis=-1).T
  ```
  
  I'd be curious whether this distribution would be of use to other numpyro users/maintainers, in which case I'd be very happy to draft a PR. Any pointers to potential improvements or issues would also be appreciated in the meantime.