refactored startResponseHandler & re-wrote tests