There are a couple of questions on this site regarding this problem, but I just can't seem to figure this out. 
My proof for (a): If $f(a)$ were not the maximum point on $[a,b]$, then $f(x)>f(a)$ for some $x$ on $(a,b)$. But then $a$ would be a shadow point, a contradiction. I think this proof is correct, but I keep getting lost on part (b). I know that by continuity of $f$ at $a$ and the fact that $f(a)>f(b)$ there exist $x$ in some neighborhood of a with $f(x)>f(b)$. I just can't seem to use that to make a contradiction.