Skin: Use WANObjectCache for sitenotice caching
* Move the md5() hash to the cache key, this makes it much safer
after a change happens by avoiding write competitions between different
servers and db slaves. It also allows an undo to re-use the existing
cache if it still exists.
In addition, it enables idiomatic use of getWithSetCallback given
that get and set are now logically separated.
* Avoid fragile re-use of variable names. Previously it read the
original $notice value at multiple points but also setting $notice
to $parsed after a certain point. Consistently use $parsed only.
(Ref T115890.)
Change-Id: I5488cc894ff1544e6c20b7d51a7a2adfc292c4ec