Fix unsaved cheapskate flag for shopkeepers

This is meant to go with commit 793ae9d932 (CS43 cheap shopkeepers
always give 3/4 sale quote).
Fix non-zero bribe with zero gold warning

This replaces the warning "zero payment in money2mon" with a check after
the bribe amount prompt stating, "You open your purse, but realize you
have no gold."

This bug also exists in upstream NitroHack.

This bug also exists in vanilla NetHack, if GOLDOBJ is defined.
Fix wrong level used in m_initweap()

Yet another set of uses of the global level pointer where it isn't
necessarily the right level to use.

This bug also exists in upstream NitroHack.
CS1033,1035,1038,1039,1068: Add Convict role

This change allows players to begin the game with the challenging new
convict role.  This commit includes UnNetHack's bug fixes to the convict
patch as well as the patch itself up to 0.7, though with my fixes it's
really more like 0.7v2.  Original patch: http://bilious.alt.org/?421

 * The convict:
   - May be human or orcish (see questions below).  They are pariahs of
     their race, meaning the usual allied racial monsters may still be
     hostile to them.
   - Starts with a cursed striped shirt, some rocks and a heavy iron
     ball chained to them.
   - Starts with sickness resistance (they can safely eat old corpses!),
     get poison resistance at XL 7 and searching at XL 20.
   - Casts spells with INT, can gain basic attack (not matter like in
     the readme!) and expert escape.  Special spell is Teleport Away.
   - Begins on the verge of hungry, but can last twice as long at hungry
     and below.
   - Can eat tripe rations without vomiting, and have an XL/8 chance to
     not vomit after eating a stale egg.
   - Causes (vault) guards and watchmen to immediately become hostile,
     regardless of the striped shirt.

 * Heavy iron ball:
   - Convicts use and train the flail skill when wielding a heavy iron
     ball; no other role can.  When the ball is wielded at basic flail
     skill, convicts can avoid tumbling down when descending stairs and
     ladders.
   - Heavy iron balls do NOT count as weapons for the purpose of
     weaponless conduct.
   - Convicts do NOT start with the flail skill at basic, but rather at
     unskilled (see questions below).

 * Striped shirt:
   - Any character (not just convicts) will be banned from a shop if
     they try to enter while wearing an uncovered striped shirt.  The
     shopkeeper remembers this even if they return later with it
     covered.
   - Shouldn't be randomly generated, assuming I read the object line
     correctly.

 * Rats:
   - Convicts start with a pet sewer rat named Nicodemus, unless the new
     ratname option is set to something else.
   - Sewer rats could grow into giant rats, but now giant rats can grow
     into enormous rats and finally into rodents of unusual size.
   - Convicts can #chat to rats or throw food to them to calm or tame
     them.  Convicts cannot tame domestic animals.
   - Keep in mind that NetHack does not allow swapping places with pets
     when punished, which convicts start out as.

 * New artifact: Luck Blade
   - Intelligent chaotic broadsword with +d5 to-hit and +d6 to damage
     versus all monsters.
   - Guaranteed first sacrifice gift for convicts.

 * New artifact: The Iron Ball of Liberation
   - Intelligent NEUTRAL (not chaotic, though it's made so for convicts)
     heavy iron ball.
   - Weighs 300 instead of 480, and is rustproof for convicts only.
   - Grants magic resistance, displacement, automatic searching and
     warning when carried.  The readme mentions stealth too, but I can't
     find it anywhere.
   - Grants intrinsic phasing when invoked which lasts for 51 to 150
     turns.  This can leave you stuck in stone, but a warning is shown
     15 turns before it wears off.
   - Touching or invoking the Iron Ball of Liberation causes any mundane
     heavy iron ball to unchain itself.  Invoking it also chains it to
     you, as will carrying it when being punished.

 * New monsters:
   - enormous rat (brown r)
   - rodent of unusual size (brown r)
   - miner (gray @), comes with pick-axe and brass lantern
   - prison guard (cyan @), strong, takes bribes
   - lava demon (red &), very strong, appears in convict quest goal
   - Robert the Lifer (white @), convict quest leader
   - Warden Arianna (purple @), convict quest nemesis, HD 20, speed 12,
     AC 0, MR 40, chaotic (-14), d25 weapon, d25 weapon, d6
     artifact-stealing claw, resists fire and poison
   - inmate (black @), convict quest guardians
   - (not a new monster) horned devil is now a red & (was a brown &)

Compared to UnNetHack:

 * Missing convict quest monster generation info added to special
   levels; they were commented out of the convict role entry.

 * Fixed intrinsic phasing not permitting diagonal movement through
   stone and diagonal gaps by altering bad_rock().

 * Fixed punishment sometimes not attaching the Iron Ball of Liberation
   if other heavy iron balls are in the inventory.

 * Fixed zero-turn soothing of rats with #chat, and use a single rnl()
   roll to simplify the code.

 * Moved special weight/rustproofing from touch_artifact() to oname(),
   where artifacts are created (or christened, really).

 * Allowed characters wearing a striped shirt to enter the Black Market.

 * Rewrapped some quest text to make it display better.

 * Alternate convict legacy text uses random creator name (%m) instead
   of Markduk.

 * Removed redundant newsym() after placebc() in newgame().

 * Being unpunished when touching or invoking the Iron Ball of
   Liberation gives the message, "You are liberated from your heavy iron
   ball!"

 * Message for failing to tame a domestic animal uses "seems" instead of
   "looks" to be blindness-neutral.

 * Fixed "Foo yells:" within verbalize() messages.

 * Removed hard-coding of starting convict alignment to chaotic, since
   only races that can be chaotic may play as convicts, and alignments
   other than chaotic cannot be chosen anyway (see questions below).

Questions/suggestions:

 * Why is the artilist.h entry of the Iron Ball of Liberation associated
   with PM_PRISONER and not PM_CONVICT?

 * The Phasing macro is identical to HPasses_walls, so why isn't the
   latter used instead?

 * /* Time begins after phasing ends */ - what does this mean exactly?

 * Should a case for pbanned be added to block_entry() so convicts can't
   enter a shop diagonally if the doorway is broken?

 * Prison guard bribery code is almost duplicated in three places; it
   could use refactoring.

 * Convict role entry contains MH_DWARF and MH_GNOME, but since neither
   can be chaotic, they can never be chosen by the player.  The
   hard-coding of chaotic alignment in the original patch suggests they
   were intended convict starting races, as does the patch readme, but
   UnNetHack doesn't permit vampire archaeologists either.  Is this
   intended, or is this race info used elsewhere (e.g. for making player
   monsters)?

 * The heavy iron ball convicts start with does NOT start them with
   basic skill in flails.  The case for wielding an iron ball with basic
   flail skill preventing tumbling down stairs implies this is
   intentional on the patch author's (Karl Garrison's) part.  However,
   UnNetHack requires 100 hits to advance a skill from unskilled to
   basic, versus NetHack's 20 hits.  Should starting convicts receive a
   few extra flail hits to compensate?
CS1058: Allow vampires as race for convicts