baseURL support,  delegates and further polish

this PR contains:

- added upload/download support by introducing delegates  [AGIOS-233](https://issues.jboss.org/browse/AGIOS-233)
- 'Http' refactored to support baseURL. Now if instantiated with one, http methods will accommodate to use if a baseURL is present [AGIOS-265](https://issues.jboss.org/browse/AGIOS-265)
- polish on the serialisers by splitting to HttpRequestSerializer and JSONRequestSerializer.
- Http tests refactored to go against a real service instead of stub (using httpbin.org). Added tests that exercise all http methods together with upload/download. (Note it can be refactored to use stubs in the future but I wanted to make they work as advertised against a real 'web' service' in our initial release)

The lib changes here are included in the Shoot cookbook PR
https://github.com/aerogear/aerogear-ios-cookbook/pull/38

(I am sorry for incorporating two fixes in one PR, but delegates and baseURL were somewhat interrelated so I opted to work simultaneously on them)