Subclass HTTPServiceError from AssertionError

@jslang convinced me this is better.

Demands should raise an AssertionError while errors from requests are IO.