Fix Issue #361: TS File has incorrect sig for observable.defineProperty by making the actual implementation more flexible