Update for sprint 21's language/mode changes. Remains compatible with
earlier sprints too.

Now accepts any selection of HTML text, even if it's HTML nested within an
overall document mode that's some other type (for example, PHP). This is
true in both sprint 21+ and earlier builds.
Merge pull request #4 from peterflynn/update-mode-handling

Fix for sprint 21+ compatibility, support HTML nested within other languages