update documentation and allow more flexible transport creation