Can you put the return type (which helps us avoid breaks in binary compatibility for public APIs).

Also, I'd rather this API:
```scala
def init[K <% Array[Byte]](kv: (K,V)): AdaptiveVector[V] =
```
Then in the scope that you need you can do: `implicit val fn: (K) => Array[Byte] = implicitly[Injection[K, Array[Byte]]` or you can just pass in Array[Byte] due to the identity being in scope.

How is that?