Introduce circuit breaker middleware

Circuit breaker watches the error condtion to match, after what it activates the fallback scenario, e.g. returns the response code.
You could embed an `Options` struct in `CircuitBreaker` instead of copying the fields.