Oh, and email address is pretty important with some things in the system, so maybe we could do like this:

set_user_data($id, $email=null, $data=array())

$this->user = array_merge(array(
    'id' => $id,
    'email' => $email,
), $data);