Add documentation and tests for with destination factory methods