Add support for Poisson injector. Allows randomized load profiles.

Added a new injector using Poisson random processes.

This new injector effectively serves as a randomized variant of `ConstantRateInjection` and `RampRateInjection` . Users still arrive at the same rate, but their arrival times are randomized.

I also added `randomize` methods to `ConstantRateInjection` and `RampRateInjection`, as this seemed like the most intuitive way to expose the new functionality.
Why this try/finally block? Why not a foldLeft?