Added 'Function.once' method