added __slots__ to HttpError
moved start() and logger to metaclass