Simple HTTP abstraction