http: new (un)marshalling infrastructure

This PR provides the first bits of the new akka-http module: the new (un)marshalling infrastructure required by @huntc. It ports everything we have in *spray* into a new an improved streamified (un)marshalling design (incl. multipart support).

/cc @jrudolph 
The FlowMaterializer is passed explicitly since it refers to an
ActorRefFactory. It is not safe to call context.actorOf outside of the
actor, and as such there's a much real risk of cloaing over and using the
FlowMaterializer from other threads, especially for nested Flows. This
issue needs to be resolved before considering implicity.
On Jul 18, 2014 11:34 AM, "Konrad Malawski" <notifications@github.com>
wrote:

> In akka-http/src/test/scala/akka/http/MarshallingSpec.scala:
>
> > +import org.scalatest.{ BeforeAndAfterAll, Matchers, FreeSpec }
> > +import akka.util.Timeout
> > +import akka.actor.ActorSystem
> > +import akka.http.marshalling.{ ToEntityMarshallers, MultipartMarshallers }
> > +import akka.stream.{ FlowMaterializer, MaterializerSettings }
> > +import akka.http.util._
> > +import akka.http.model._
> > +import headers._
> > +import MediaTypes._
> > +import HttpCharsets._
> > +
> > +class MarshallingSpec extends FreeSpec with Matchers with BeforeAndAfterAll with MultipartMarshallers {
> > +  implicit val system = ActorSystem(getClass.getSimpleName)
> > +  import system.dispatcher
> > +  val materializerSettings = MaterializerSettings(dispatcher = "akka.test.stream-dispatcher")
> > +  implicit val materializer = FlowMaterializer(materializerSettings)
>
> Hah, seems everyone really wants this guy to be implicit... ;-) // cc
> @drewhk <https://github.com/drewhk> @viktorklang
> <https://github.com/viktorklang>
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/akka/akka/pull/15554/files#r15103042>.
>