Nontrivial hyperinvariant subspace over $\mathbb{C}$ I am having difficulty proving the following:

Let $V$ be a finite dimensional vector space over the complex numbers, and $T\colon V\to V$ a linear transformation. Prove that $T$ has a nontrivial (not equal to $V$ or to the zero subspace) hyperinvariant subspace iff $T$ is not a scalar transformation (that is, $T$ is not of the form $aI$). 

I haven't encountered the term "hyperinvariant" before this question, so I'll append the definition given for that as well:

A subspace $W$ is called $T$-hyperinvariant if for every linear transformation $S\colon V\to V$ that satisfies $ST=TS$, $W$ is $S$-invariant.

This is a question from my course, but it's not homework (it's from a former exam), so feel free to give complete answers. Hints are also welcome, of course.
Thanks in advance!
 A: If $\dim(V)\leq 1$, then every linear transformation is a scalar multiple of the identity, and $T$ has no nontrivial hyperinvariant subspace; so we may assume $\dim(V)\gt 1$.
If $T$ is a scalar transformation, then it commutes with every linear transformation; given any proper subspace $W$ of $V$, there is a linear transformation such that $S(W)\neq W$: indeed, let $\{w_1,\ldots,w_k\}$ be a basis for $W$, and let $v_{k+1},\ldots,v_n$ be vectors in $V$ such that $\{w_1,\ldots,w_k,v_{k+1},\ldots,v_n\}$ is a basis for $V$. Because we are assuming that $W$ is not the zero vector space, it follows that $k\geq 1$; because we are assuming that $W\neq V$, it follows that $k\neq n$. In particular, $w_1$ is a nonzero vector in $W$, and $v_n$ is a nonzero vector not in $W$. Now define $S\colon V\to V$ by defining it on the basis $w_1,\ldots,w_k,v_{k+1},\ldots,v_n$ as follows:
$$\begin{align*}
S(w_i) &= w_i&&\text{if }2\leq i\leq k,\\
S(v_j) &= v_j&&\text{if }k+1\leq j\lt n,\\
S(w_1)&=v_n,\\
S(v_n)&=w_1,
\end{align*}$$
and extending linearly. Then $S(W)$ is not contained in $W$, since $w_1\in W$, but $S(w_1)=v_n\notin W$. Since $T=aI$, then $ST=TS$; so $W$ is not hyperinvariant. This holds for any nontrivial subspace of $V$, so we conclude that $T$ has no nontrivial hyperinvariant subspaces. This proves that if $T$ has a nontrivial invariant subspace, then it is not a scalar transformation.
Conversely, suppose that $T$ is not a scalar transformation; let $\lambda$ be an eigenvector of $T$, and let $W$ be the eigenspace of $T$ associated to $\lambda$. Then $W$ is a nontrivial subspace (it's not $0$ because $\lambda$ is an eigenvalue, and it's not $V$ because $T\neq \lambda I$). I claim that $W$ is hyperinvariant.
Indeed, let $S\colon V\to V$ be a linear transformation such that $TS=ST$, and let $w\in W$. Then
$$\lambda S(w) = S(\lambda w) = S(T(w)) = T(S(w)),$$
so $S(w)$ lies in the eigenspace of $T$ corresponding to $\lambda$, which is none other than $W$. So $S(W)\subseteq W$, proving that $W$ is $S$-invariant, as claimed. $\Box$
