Added a convenient helper function to the Scala cache api to deal with caching futures. Any future which has a failure will not be cached, this is extreamly useful when working with Play WS and we don't want to cache exceptions such as Timeouts.