title: Rxjs observable throw error when returns error is caught and returned
body: <p>Hi I am getting this error "you provided an invalid object where a stream was expected. You can provide an Observable, Promise, Array, or Iterable" when this http request is called from my effects. </p>
  
  <pre><code>deleteAccount(accountId: string): Observable&lt;any&gt; {
      return this.http.delete(FUNDING_ACCOUNT_DELETE_URL
        .replace(ACCOUNT_ID, accountId)).pipe(
          timeout(2000),
          catchError(err =&gt; { 
            return err; })
        );
    }
  
  @Effect()
    paymentOptionRemove = this.actions
      .ofType(ActionTypes.PAYMENT_OPTION_REMOVE).pipe(
        switchMap((action: PaymentOptionRemoveAction) =&gt;
          this.service.deleteAccount(action.payload).pipe(
            map(
              _ =&gt; new PaymentOptionRemovedAction()),
            // tslint:disable-next-line:arrow-return-shorthand
            catchError(err =&gt; {
              if (err) {
                console.log(err);
              }
              return of(new PaymentOptionRemoveErrorAction());
            })
          ))
      );
  </code></pre>