(Unitary) diagonalization of $A = I-xy^*$ I'm continuing to prepare for a Linear Algebra exam and found another problem that puzzles me.

Let $A = I+xy^*$, where $x,y \in \mathbb{C}^m (\neq 0)$. 
(a) Determine a necessary and sufficient condition on $x,y$ so that $A$ admits an eigenvalue decomposition, then find such a decomposition.
(b) Determine a necessary and sufficient condition on $x,y$ so that $A$ admits a unitary diagonalization, then find such a diagonalization.

For part (a), I know that a basis of eigenvectors for $I + xy^*$ would be sufficient; I'm not sure how to relate that condition to $x,y$ yet.
For part (b), $I +xy^*$ being normal would be sufficient to ensure a unitary diagonalization; this is equivalent (I think) to $\|x\|_2^2 \,yy^* = \|y\|_2^2 \,xx^*$. I'm not sure then how to find the diagonalization, nor what the necessary conditions are in either case. 
 A: Let us write $\;T=I+xy^*\;$ , then $\;T\;$ is unitarily diagonalizable iff it is normal, i.e. iff $\;TT^*=T^*T\;$ , so:
$$TT^*=(I+xy^*)(I+yx^*)=I+xy^*+yx^*+\left\|y\right\|^2xx^*$$
$$T^*T=(I+yx^*)(I+xy^*)=I+xy^*+yx^*+\left\|x\right\|^2yy^*$$
We thus have that  $\;TT^*=T^*T\iff \left\|y\right\|^2xx^*=\left\|x\right\|^2yy^*\;$
Assuming the last (i.e., $\;T\;$ is normal), suppose $\;\lambda\;$ is an eigenvalue of $\;T\;$ corresponding to an eigenvector $\;v\;$ , then (we use $\;\langle \rangle\;$ to denote the unitary inner product):
$$\lambda v=Tv=(I-xy^*)v=v-x(y^*v)=v-\langle v,y \rangle x$$
Observe that  $\;v\in\text{Span}\{y\}^\perp\implies \lambda v=v\iff \lambda=1\;$
and since clearly  $\;\dim \text{Span}\{y\}=1\;$ , then $\;\dim\text{Span}\{y\}^\perp=m-1\;$ , so we already have the eigenvalue $\;1\;$ with multiplicity (algebraic or geometric, it is the same as the matrix is diagonalizable) $\;m-1\;$ . But we also have:
$$(I+xy^*)x=x+\langle x,y\rangle x=\left(1+\langle x,y\rangle\right)x\implies 1+\langle x,y\rangle$$ is an eigenvalue with eigenvector $\;x\;$ ...Try to finish now this.
