Дело в том, что свойства объекта трогать нельзя, т.е. нельзя создать объект с нужным прототипом и скопировать в него свойства исходного. Нужно в исходном объекте заменить один прототип на другой. Как это сделать?
Obj.prototype = newProtoObj
не работает