Why not add a callback parameter to removeFromStack?

Why not just `typeof fn === 'function'`? Also, `Object.prototype.toString` can be overwritten so it's behaviour may not be stable