Add initial support for the learning part of lessons.
Fix typo
Define variables after script has been loaded.
Add support for kanji and radicals during review.

Kanji, radicals and vocabulary are in elements with different ids.
The id name for radicals is just a guess since I haven't seen the HTML
for it yet.
Enable script for both reading and meaning
Reading and Meaning divs have different ids
Refactor: get rid of global variables.
Tentative radical support

Needs more work and testing when I get lessons with radicals.
Merge branch 'master' into learning-lookup-support

Conflicts:
	wkhidem.user.js
Adapt to changes on master.
Refactor and generalize code to be able to re-use the quiz related code.
Update waitForKeyElements with proper selector.

supplement-info exists from the start before the wanted data
has been pulled in. The radical/kanji/vocabulary class on the
main-info element is pulled in together with the wanted data,
so listen to that instead.
Support radicals that are images.

Some radicals are made up of one image instead of a character.
In this case we use the filename of the image as part of the
key instead of the actual character.
Fix live version of WaniKani.

The lessons are loaded in batches of several items and when
switching page new data is updated via javascript and not by
loading a new web page. Set up a listener that listens to
changes to the main-info element and calls init() whenever
it changes.

Also need to have different ids for the show/hide links for
radical/kanji/vocabulary as the HTML for all three types are
avaialbe at the same time during lessons.
Call init() when the lessons are initially loaded as well.
Change hideIfNeeded to setCorrectVisibility

Since lessons are updated in-place the hidden items must be
shown again if needed when the old data is replaced by new data.
Don't explictly show hidden headers during quiz mode.

In quiz mode the reading or meaning is hidden initially depending on
what is being asked for. We shouldn't destroy this by showing the headers.
Add a "-q" to the link id for the quiz.

During lessons and the quiz the HTML contains the old html from the
learning part. This means that the show/hide links also exists in the
HTML so the links in the quiz needs a separate id from the links in the
non-quiz to prevent id collisions.
Set correct selector for waitForKeyElements in quiz mode
item-info-meaning-mnemonic doesn't exist for radicals, but note-meaning
does exist for radical, kanji and vocabulary.
Don't re-init on attribute change during quizzes