quantr 0.5.2

Create and simulate gate-based quantum circuits.
Documentation
I acknowledge that:

- [] my code passes all tests by running `cargo test`;
- [] my code is formatted with `cargo fmt`;
- [] my code successfully compiles the documentation without warnings
  using `cargo doc`;
- [] I have updated CHANGELOG.md documenting what was changed/added;
- [] I have added unit testing to test my new code (if applicable);
- [] I have signed off on all commits with my name and email;
- [] I have answered all the questions below and given justification
  where appropriate; and
- [] I am merging with the `dev` branch.

## What is the current problem, or feature that should be added?

_What aspect of the project needs changing?_

## How does this fix and/or better quantr?

_If it's a feature, please add examples on how you would use it._ 

## Is this pull request a major or minor change with respect to the `dev` branch?

_Please refer to [semantic versioning for Rust](https://doc.rust-lang.org/cargo/reference/semver.html). If this is a major/breaking change, please add an explanation to why it could not be minor, or equally why it should break the current version._

## What do the unit tests cover?

_Description of the unit tests added (if applicable)._

## Additional comments.

_Any more justifications, examples of output, or even suggestions for improving this pull request template are all welcome!_