Lots of little tweaks and fixes, plus some modding docs

Changes to AI:
- The boredom value (for determining if a monster forgets about you once you're out of sight) no longer increases infinitely; it's reset whenever they can see you.
- Monsters will now flee more than one space away when low on health, rather than hopping back and forth if you do nothing.
- Monsters with the steadfast ability will now sometimes wait specifically to take advantage of it to allow their energy to recover.
- The famineAI did more or less the same as the drainAI, so it was removed.
- The drainAI now clips your hunger to 0.
- Removed spurious stats area update from the engulfAI (it was used for debugging).
- The statusAI now supports the stunned status effect.
- The throwAI now knows about the range bonus that the marksman ability confers.

Changes to creatures:
- Creatures without an inventory can now gain the benefit of one item special ability.
---> Some changes were made to get some of the abilities to work correctly.
---> Death now has lifebane, troll warrior has stunproof.
---> These abilities are listed both in look mode and in the library.
---> Bloodshield and starweave modify (and in the latter case, drain) the creature's base defence.
---> Magnetism supported too, though no longer an item special.
- Creatures without an inventory can now gain the benefit of the parry ability, using the disarm parameter.
- Add monsters to demonstrate some of these points - unicorn, rock mole, zebranky, rook, angel

Changes to items:
- Items can now be given a range of 0 to prevent them from being thrown at all.
- With multiple starweave items equipped, a random one now takes the hit instead of the first non-destroyed one.
---> The text also shows the item's name.
- Multiple magnetic items will now stack, though of course the miss chance can't be reduced below 0.
---> Also, magnetism is no longer classified as an item special; it's now a standalone property.
- Multiple fortune items will now stack - each such item equipped increases the multiplier on the loot chance.
- Chitin armour now correctly equips in the torso slot instead of the left hand.
- Fix nourishment potion not alleviating monsters' fatigue when thrown at them.
- The vorpal ability now works on thrown items; it also shows the name of the item when the effect activates
- New ability: faebane
- Add items to demonstrate some of these points - vorpal shuriken, cold iron sword, scythe of fortune

Other:
- Fixed tireless passive ability and vibrant warmth item ability not affecting fatigue recuperation.
- Can now handle divine bonus levels of up to 10, though the limit for the player remains the same.
- Library now shows special attacks known when clicking "spellcaster" or "uses advanced fighting moves".
- When showing a monster's loot in the library, the friendly name is now used instead of the internal ID.
- Library now shows the equip slot for items.
- Entangled status correctly shown when you have the pass webs ability.
- When you manage to get entangled in webs despite the pass webs ability, you now also have a chance to spontaneously free yourself without tearing down the entire web.
- If you're on webs but not entangled, you now attack them if you wait instead of moving off.
Fix crash when revisiting a cleared floor
Prevent rock moles, unicorns, rooks, zebrankies from spawning on the top three floors
Make library output functions take the target element as a parameter
Fix bug with links in the library list views not working
Add classes to the things the library knows about
- This involved unifying the various class properties into a central location
Add potential for "secret" bits in the online help, which only appear under certain conditions
- These bits will never appear when viewing the help from the setup screen
When the player has an item equipped that confers some unusual effect, this is now shown in the stats area.
Update README to properly use Markdown syntax and also fix some obsolete info
Merge the rust and hunger-draining AIs into the statusAI, since they were very similar
The library can now show AI parameters for any AI that has parameters
- It doesn't show parameters that are integrated into the description
Add a creature that blocks sight
The throwAI now better accepts that it doesn't need to throw from max range.
---> Specifically, when aiming for a location from which it can throw, it uses its current distance if it's already within range.
---> The spellAI has the same change.
Also added some unrelated sanity checks
Various library/stats improvements
- No more constructing of textual code for event handlers - where event handlers are needed, DOM objects are now constructed instead of building HTML code.
- When the library gives suggestions for typos, the suggestions are now clickable.
- Starweave details no longer auto-expanded; it shows a clickable total like other properties.
- Magnetism's total is also clickable now for a detailed breakdown.
- Total magnetism is now clipped to 0, to support items having negative magnetism
Make sure variables are declared with var, and nuke some unnecessary globals
Casting from stamina now properly uses unupgraded spell parameters
Spell parameters now show in the casting list, and items can alter them
- Also, attenuation is now a percentage instead of a fraction, to avoid weird floating-point stuff.
- Also fixed issue with displaying special properties from items in the stats area.
Allow items to alter spell energy consumption
Improve output of item special abilities in the stats and the library
- Now with more expandable details
More library features and some bugfixes
- Enter a single character to see all entities that use that character
---> Includes hard-coded entities like special terrain tiles (eg boulders) and animation effects
---> Animation effects mostly link to spells that use them
---> Includes scribed scrolls of potion spells, but omits other items without prototypes
- Enter 'chars' to see all used characters, which are clickable
- Items without prototypes are now recognized. This includes all of the following:
---> Rusty items (only for items vulnerable to rust)
---> Corroded items (only for items vulnerable to acid)
---> Enchanted items (only for items that can be enchanted)
---> Scribed scrolls of potion spells
---> Uncursed variants of every cursed item
- Items that occur in multiple colours now show all possible icons
- The player can be viewed, if a game is ongoing
- Several item properties were missing, most notable acid-proof
- Input field is wider

Bugfixes:
- Fixed a probable issue with scribed scrolls breaking saved games
- Fix a possibility of corroding an acid-proof weapon when using it to deflect an acid glob
- Fix potential of uncursing a non-cursed item, thus wasting a scroll or spell
- Fix enchantments on thrown weapons not showing (both in-game and in library)