Ensure Close won't deadlock when racing ServeHTTP
Ensure Close won't deadlock when racing ServeHTTP

* It's possible for the following sequence of events to Deadlock the
test server:
 - Close() obtains the writeLock
 - ServeHTTP() is called by the internal HTTP server, which has opened a
   connection
 - Close() calls the internal server Close(), which waits for all
   connections to close before continuing.

* The lock is used to protect internal data structures on the test
  server, therefore it is ok to unlock after setting the internal server
  to nil, and prior to close

Signed-off-by: Will Martin <9c35c700d580163e024ea0f314140dbb6ef9e1ac@pivotal.io>

onsi/gomega,raphael/gomega