I use a singleton here so that I can get the same transport instance for testing.