Use ArrayBuffer.distinct instead of LinkedHashMap
Reduce response body memory footprint, close #1535
Protect some response methods in case underlying response could not be built