Refactored choke code and added more tests.