Allow to customize the Scala client's behaviour on failure.

- Allow to override the logging message/method when the response is invalid/not found
- When looking for JSON, consider blank contents as none.
I woould prefer this to be a simple function literal, since it is only used as such. Also might be a bit more performant so a new Function[2] wont need to be created each call.

```scala
val warnFailureRecovery = { (id: String, failure: Throwable) => 
  logger.warn(s"Object not retrievable from part response: $id", failure)
  None
}
```