В отговор на последния ти коментар.
Прав сте, че null е тип стойност, но типовете null са начин да се каже на интерпретатора, че няма няма стойност . следователно трябва да зададете стойностите на всяка ненулева стойност или ще получите грешката. във вашия случай задайте тези стойности на празни низове. т.е.
var newUser = new user({
/* We will set the username, email and password field to null because they will be set later. */
username: '',
passwordHash: '',
email: '',
admin: false
}, { _id: false });