TODO: - [ ] Make sure all of the significant new logic is covered by tests - [ ] Rebase your changes on master so that they can be merged easily - [ ] Make sure all tests pass - [ ] Update CHANGELOG.md with your change - [ ] If this was a change that affects the external API, update the README