//получилось a instanceof Array = true, хотя так быть не должно.....
ты переопределил прототип конструктора и потом пишешь "а соответствует ли имя родителя нового объекта старому?", а так и есть, потому что название родителя не поменялось, зато сам родитель поменялся, но имя - нет.
А конкретно по задаче: я не понимаю что конкретно вам надо.