Make EntityEncoder invariant

* Contravariant type classes are scarce both in standard lib and scalaz.
* [This WONTFIX](https://issues.scala-lang.org/browse/SI-2509) and ["the blight of contravariance" discussion](https://groups.google.com/forum/#!topic/scala-language/ZE83TvSWpT4) shed light on why not.
* It didn't really hurt at all to make them invariant.


I'm not sure a ```Strategy``` is the right choice, the [doc string](https://github.com/scalaz/scalaz/blob/series/7.2.x/concurrent/src/main/scala/scalaz/concurrent/Strategy.scala#L8) suggests a ```Strategy``` will execute something somewhere but the only way to get the result is to block on the thunk you get back.