Ensure JsObject contains a pattern-matchable List of fields

```scala
case class JsObject(fields: Seq[(String, JsValue)]) extends JsValue {
```

JsObject.fields is not always suitable for pattern matching as a List. Therefore this code can silently fail everytime the fields are not implemented as a List:

https://github.com/ornicar/Play-ReactiveMongo/blob/master/src/main/scala/play/modules/reactivemongo/PlayBson.scala#L42

My patch doesn't look so good, but at least I hope it explains the issue clearly enough.