(Bug 52940) Don't block parsoid-inserted attrs in sanitizer

* Till now, the sanitizer had a hack for the typeof attribute
  to pass them through. Plus, any html tags that were not in
  the whitelist had their about attributes stripped as well.

  This works well for templates, regular wikitext and extensions
  that generate HTML tags in the whitelist.  However, for
  extensions like <timeline> which generates the <map> html
  tag, the about attribute was getting stripped.

* Given that we now escape Parsoid-mimicking attributes, it is
  safe to let through all typeof and about attributes that have
  Parsoid-generated values. I added a related FIXME about our
  current escaping that maybe a bit aggressive in always escaping
  typeof and about ids even when the values do not resemble
  Parsoid-inserted typeofs or about ids.

  This fixes the parse output for the timeline extension (see
  example below).

* Also updated comments to more accurately reflect sanitizer
  logic.

* TODO: Add a parser test for this.  Might require putzing with
  mockAPI.js -- will work on it in a separate patch.

-------------------------
<timeline>

ImageSize  = width:160 height:550
PlotArea   = left:50 right:0 bottom:10 top:10
AlignBars  = justify

DateFormat = yyyy
Period     = from:1919 till:1991
TimeAxis   = orientation:vertical
ScaleMajor = unit:year increment:5 start:1920

Define $dx = 25 # shift text to right side of bar

PlotData=
  bar:Leaders color:red width:25 mark:(line,white) align:left fontsize:S

  from:start till:1922 shift:($dx,15)   text:Vladimir~Ilyich~[[Lenin]]
  from:1922  till:1953 shift:($dx,5)    text:[[Stalin|Josef~Stalin]]
  from:1953  till:1964 shift:($dx,5)    text:Nikita~[[Khrushchev]]
  from:1964  till:1982 shift:($dx,5)    text:Leonid~[[Brezhnev]]
  from:1982  till:1984 shift:($dx,-12)  text:Yuri~[[Andropov]]
  from:1984  till:1985 shift:($dx,4)    text:Konstantin~[[Chernenko]] fontsize:XS
  from:1985  till:end  shift:($dx,10)   text:Mikhail~[[Gorbachev]]
</timeline>
-------------------------

Change-Id: Ice20289f71fdb47c671deb9bd331032a48bb0e1e
Merge "(Bug 52940) Don't block parsoid-inserted attrs in sanitizer"