message: fix(Subscription): Return Empty when teardown === null
  * fix(Subscription): Return Empty when teardown === null
  `typeof teardown` returns object when null. It breaks later when rxjs tries to access the closed property.
  The commit fixes that by first checking for null/undefined.
  * fix(Subscription): tslint errors
diff: @@ -130,6 +130,11 @@ export class Subscription implements SubscriptionLike {
  */
  add(teardown: TeardownLogic): Subscription {
  let subscription = (<Subscription>teardown);
  +
  + if (!(<any>teardown)) {
  + return Subscription.EMPTY;
  + }
  +
  switch (typeof teardown) {
  case 'function':
  subscription = new Subscription(<(() => void)>teardown);
  @@ -147,9 +152,6 @@ export class Subscription implements SubscriptionLike {
  }
  break;
  default: {
  - if (!(<any>teardown)) {
  - return Subscription.EMPTY;
  - }
  throw new Error('unrecognized teardown ' + teardown + ' added to Subscription.');
  }
  }
  