Issue 29: When sending a request, if no response is required (e.g. nil evalator block), the next request is immediately sent without waiting for a timeout.
Issue #29: Don't call -serialPort:didReceiveResponse:toRequest: if response data is empty.
Issue #32: Refactored request handling logic. Now all done on a serial background queue. Receive buffer is cleared before sending a new request.