Synchronization with Docker v1.7 remote API changes.

Now when pushing an image to the registry, auth info is transferred in 'X-Registry-Auth' header, wherein the body is empty (changed in v1.5).
More proper streaming body handling while pushing image to the Docker Registry.

An error key is also extracted from received json string.
Eliminating code duplication.
Finally more proper streaming body response parsing.