Java Http Model

Follow-up to typesafehub/akka-streams#66 based on Mathias' latest version. Alone because of the sheer amount of classes I'm pretty sure there are some rough edges left. So, please be rigorous. 

(It seems this PR has to live in the spray/akka repository as long as its base is also living there.)
It's a trade-off. Usually, we try to reuse Scala identifiers as much as possible (Scala API inherits Java API). If that's not possible because the types disagree, we chose to use Java-style `getX` methods, instead.