Race condition disposing HttpListenerHost and checking disposed

If you keep starting and stopping an httpListenerHost within the same process (as I do in my tests) you will hit this error, because when we process a request we check if we are already disposed but if the object is disposed in between then and getting the context we will get an ObjectDisposedException