function createNodeObservable(fn, ctx, selector, args) {
  var o = new AsyncSubject();

  args.push(createNodeHandler(o, ctx, selector));
  fn.apply(ctx, args);

  return o.asObservable();
}
Converts a callback function to an observable sequence.

@param {Function} fn Function with a callback as the last parameter to convert to an Observable sequence.
@param {Mixed} [ctx] The context for the func parameter to be executed.  If not specified, defaults to undefined.
@param {Function} [selector] A selector which takes the arguments from the callback to produce a single item to yield on next.
@returns {Function} A function, when executed with the required parameters minus the callback, produces an Observable sequence with a single value of the arguments to the callback as an array.