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.)
Why this non-standard naming convention?