Working through issues with timeouts
Refactoring listener logic, fixing timeouts