push, pull, import, insert -> Json Stream

Continuation of #703 
Fixes #716 
Fixes #354 

There is now a proper error handling:
if the stream was never written, it send http error
and otherwise it sends 
`{"error":"<error">}`
and the client decodes it as an error.

So now docker pull will really returns an error if needed.