title: spray-json cannot marshal Map[String,String]
body: <p>I have the following route setup, but when my map is returned in the first complete block I get an error:</p>
  
  <p><code>could not find implicit value for evidence parameter of type spray.httpx.marshalling.Marshaller[scala.collection.immutable.Map[String,String]]</code></p>
  
  <pre><code>import spray.routing.HttpService
  import akka.actor.Actor
  import spray.http.HttpRequest
  import spray.routing.RequestContext
  import spray.json.DefaultJsonProtocol._
  
  
  class UserServiceActor extends Actor with RestUserService {
    def actorRefFactory = context
    def receive = runRoute(linkRoute)
  
  }
  
  trait RestUserService extends HttpService {
  
    val userService = new LinkUserService
  
    def linkRoute = 
      pathPrefix("user" / Segment) {
        userId =&gt;
          path("link") {
            parameters('service ! "YT") {
              complete {
                Map("status"-&gt; "OK", "auth_url" -&gt; "http://mydomain.com/auth")
              }
            }
          }
      }
  }
  </code></pre>
  
  <p>According to <a href="https://github.com/spray/spray-json/blob/master/src/test/scala/spray/json/CollectionFormatsSpec.scala" rel="noreferrer">this test</a> I should be able to convert a Map to json when DefaultJsonProtocol._ is imported but even that's failing:</p>
  
  <pre><code>val map:Map[String, String] = Map("hi"-&gt;"bye")
  map.toJson
  </code></pre>
  
  <p><code>Cannot find JsonWriter or JsonFormat type class for scala.collection.mutable.Map[String,String]</code></p>
  
  <p>Not sure what's wrong :(</p>