JavaScript: melhor maneira de adicionar métodos dinâmico

Gostaria de saber se existe uma maneira melhor de adicionar métodos dinâmicos a um objeto existente. Basicamente, estou tentando montar novos métodos dinamicamente e, em seguida, anexá-los a uma função existent

Este código de demonstração funciona.

builder = function(fn, methods){

    //method builder
    for(p in methods){
        method = 'fn.' + p + '=' + methods[p];
        eval(method);
    }

    return fn;
}
test = {}
test = builder(test, {'one':'function(){ alert("one"); }','two':'function(){ alert("two"); }'} );

test.one();
test.two();

questionAnswers(5)

yourAnswerToTheQuestion