Implement basic control flow checks for ``consider-using-with`` (#4929)

* Add some control flow checks to consider-using-with in order to handle assignments in different branches
* Use existing function from ``astroid`` to determine whether two statements are exclusive
* Add unit tests for new utility methods
* Add ChangeLog and whatsnew entry
5 files changed