Http client and request "classes" to provide cancellable requests