title: Scala silhouette cannot authenticate
body: <p>Using Scala Silhouette slick seed template I am trying to implement authentication in Play. On authentication (when you click sign in) - I get this error in console. Any ideas on where to proceed to fix this? I have to note I am fairly new to Silhouette and Scala system itself.</p>
  
  <pre><code>[error] a.a.ActorSystemImpl - Uncaught fatal error from thread [application-akka.actor.default-dispatcher-3] shutting down ActorSystem [application]
  java.lang.NoSuchMethodError: play.api.libs.functional.syntax.package$.functionalCanBuildApplicative(Lplay/api/libs/functional/Applicative;)Lplay/api/libs/functional/FunctionalCanBuild;
      at com.mohiva.play.silhouette.impl.authenticators.CookieAuthenticator$.&lt;init&gt;(CookieAuthenticator.scala:92)
      at com.mohiva.play.silhouette.impl.authenticators.CookieAuthenticator$.&lt;clinit&gt;(CookieAuthenticator.scala)
      at com.mohiva.play.silhouette.impl.authenticators.CookieAuthenticatorService.init(CookieAuthenticator.scala:229)
      at com.mohiva.play.silhouette.impl.authenticators.CookieAuthenticatorService.init(CookieAuthenticator.scala:148)
      at controllers.CredentialsAuthController$$anonfun$authenticate$1$$anonfun$apply$3$$anonfun$apply$4$$anonfun$apply$5$$anonfun$apply$7.apply(CredentialsAuthController.scala:72)
      at controllers.CredentialsAuthController$$anonfun$authenticate$1$$anonfun$apply$3$$anonfun$apply$4$$anonfun$apply$5$$anonfun$apply$7.apply(CredentialsAuthController.scala:70)
      at scala.concurrent.Future$$anonfun$flatMap$1.apply(Future.scala:251)
      at scala.concurrent.Future$$anonfun$flatMap$1.apply(Future.scala:249)
      at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:32)
      at akka.dispatch.BatchingExecutor$AbstractBatch.processBatch(BatchingExecutor.scala:55)
  </code></pre>
  
  <p>Method itself:</p>
  
  <pre><code>def authenticate = Action.async { implicit request =&gt;
      SignInForm.form.bindFromRequest.fold(
        form =&gt; Future.successful(BadRequest(views.html.signIn(form))),
        data =&gt; {
          val credentials = Credentials(data.email, data.password)
          credentialsProvider.authenticate(credentials).flatMap { loginInfo =&gt;
            val result = Redirect(routes.ApplicationController.index())
            userService.retrieve(loginInfo).flatMap {
              case Some(user) =&gt;
                val c = configuration.underlying
                env.authenticatorService.create(loginInfo).map {
                  case authenticator if data.rememberMe =&gt;
                    authenticator.copy(
                      expirationDateTime = clock.now + c.as[FiniteDuration]("silhouette.authenticator.rememberMe.authenticatorExpiry"),
                      idleTimeout = c.getAs[FiniteDuration]("silhouette.authenticator.rememberMe.authenticatorIdleTimeout"),
                      cookieMaxAge = c.getAs[FiniteDuration]("silhouette.authenticator.rememberMe.cookieMaxAge")
                    )
                  case authenticator =&gt; authenticator
                }.flatMap { authenticator =&gt;
                  env.eventBus.publish(LoginEvent(user, request, request2Messages))
                  env.authenticatorService.init(authenticator).flatMap { v =&gt;
                    env.authenticatorService.embed(v, result)
                  }
                }
              case None =&gt; Future.failed(new IdentityNotFoundException("Couldn't find user"))
            }
          }.recover {
            case e: ProviderException =&gt;
              Redirect(routes.ApplicationController.signIn()).flashing("error" -&gt; Messages("invalid.credentials"))
          }
        }
      )
    }
  </code></pre>
  
  <p>This is the line exception pins to -</p>
  
  <pre><code>env.authenticatorService.embed(v, result) 
  </code></pre>