Fixed HTML5 History behaviour in Safari

Now it doesn't add extra states unnecessarily on startup.
Tags displayed in passage map (+ fixes)

* The first few tags are displayed in a peach ribbon along the bottom of
the passage, which should be distinctive from a distance and at low zoom
levels.
* Decided to give Jonah and Sugarcane's .content div the old Jonah .body
class, too.
* Now, for backwards-compatibility, if <<display>>'s argument fails to
parse, it will now try and interpret it as an unquoted passage name
string before failing.
Image fixes + Import from URL

* Images of a type unknown to wxPython will no longer cause crashes.
* Now, script passage text is also displayed in monospace.
* Added 'Import Image From Web URL', letting the author import an image
from the web.
HTML import now decodes obfuscated source

* Importing a HTML file that has been obfuscated with now de-obfuscate
it.
* Fixed some importer bugs.
* Added the GPL v3 fulltext.
* Tweaked the Windows NSI script.
Fixed legacy engine patches not finding $

Old scripts that monkey-patched engine functions and used the $ function
should now work again.

Also re-ordered the Import menu.
Added <<nobr>>

This macro is similar to <<silently>>, except it only silences line
breaks. Suggested by Andi McClure.
Added variable-setting to the link syntax

Now, you can write [[link text|passage name][$var = "value"]] to make a
passage or external link that changes a variable when it's followed. The
code section is treated as if it were arguments to a <<set>> macro. This
syntax addition should work with <<choice>> macros (but currently not
the [img] syntax).
Fixes to <<choice>> in the IDE

<<choice>> links using the new syntax are now registered correctly in
the Incoming/Outgoing/Broken Links menus.

Also made ] symbols unusable in passage names.
Fixes + <<if>> change + 'nobr' tag

* Fixed a display bug with monospace passage fonts.
* Changed jQuery to version 1.10.2 instead of 2.0.3.
* Added the 'nobr' tag, which applies the effects of <<nobr>> to an
entire passage, without needing to wrap it all in the macro.
* Changed <<if>> to no longer trim whitespace from its contents - a
behaviour that few took advantage of and annoyed several others.
* Now, making a link directly to an image will simply display the image.
Annotation display fixes

Annotations can now have link arrows emerge from them again.

Also fixed a bug in word-wrapping.
Minor engine code cleanup

Made some things a little tidier, and fixed a few variables.
Bookmark hash URLs can now store variables

The altered variable state of the story is now stored in passage
bookmark links, and can thus be restored. This uses a combination of
JSON and base64 to store both acyclic objects and primitive values in
hash URLs - and without revealing their identity or contents to the
casual player.

A little more must be done to get this working for link-set variables.
Variable bookmark hashes now work with Jonah

Incidentally - in order for variable-setting links to work with Jonah's
rewind, I made it so that a passage's variable state before a
variable-setting link is saved into the .passage element (independent of
the history stack), and restored when the passage is rewound to.
Reworked bookmark hash code

* The encoding/decoding functions were too confusing, so I rewrote them.
The bookmark has should now be sufficient to reproduce the entire game
state (barring, of course, variable data that can't be JSON serialised).
* Now, variable-setting links that occur 'between' history entries are
now stored in a history[n].linkVars object, for both Sugarcane and
Jonah.
* This code should now work in IE 8 as well.
* Also added a 'bookmark' option to StoryOptions, which controls the
availability of the 'Bookmark' link.
Shortened variable hashes

The URL hash now only records instances when a variable changed its
value, instead of recording every variable in every state.
Some noscript message tweaks

* The <noscript> message is now present inside the #passages div.
* Added an early exit point in main() for very old browsers.
* Added the <noscript> message to Responsive, as well as some IE 8
fixes.
IDE link arrows for images and tagged stylesheets

* Embedded images now have filigree-thin near-invisible arrows to any
passage that uses them.
* Also, tagged stylesheets have arrows linking them and any passages
with the same tag.
* Removed redundancies from Sugarcane's #sidebar CSS.
* Made the fast-drawing selection rectangle transparent.
Fixed <<remember>>

* Fixed the code so that it works - and, more specifically, can remember
multiple variables given in a single compound statement to one macro.
* Added <<forget>>, as seen in T.M.Edwards's SugarCube.
* Removed the cookie fallback. No browser that Twine 1 currently
supports (IE 8 upward) lacks localStorage.
* Also fixed a few minor bugs with other macros.
Some minor fixes

* Added some checks for the situation where IE prevents localStorage
access for offline HTML files. I'm not adding back the cookie fallback
because that fails in offline mode as well.
* Decided to reinstate <<return>> for Jonah, just as a sort-of shorthand
for [[Back|previous()]].
* Fixed the text wrapping for annotation passages, again.
Image bugfixes + more

* Fixed a crash caused by attempting to view an embedded GIF that
wxPython cannot read.
* Fixed drag-and-drop importing of images not working (at least in
Windows).
* Connectors are no longer drawn between two stylesheets with the same
tag.
* Engine.js: namespaced some loose vars into appropriate objects.