New uimenu class with options for colors, size, positioning, behavior, preselection, and per entry definitions for hotkey, disabling, etc.
Also supports quick and dirty invokation like menu();
Add ui.cpp and ui.h to windows .cbp thingie
Now using 'uimenu' class to query for sorting, or destination when moving
to an 'a'll area. Depends on pull 1487
Warning for (startx,width,starty,title,ents) constructor removed: tested ok. -1024 changed to UIMENU_INVALID in init();
Merge branch 'better_menu' into advanced_inv_better_popups
Comment typo fixes
Don't despawn monsters when exiting the game, they're already saved elsewhere.
Convert some more stuff to using choose_adjacent().
Changed M72 LAW description to be more accurate

Closes #1499
Closes #800
Bugfix for incorrect item spawn location in mansion bedrooms
Clean plans member of monster object when loading from file.
Prevents pathological corner-case where
save -> exit -> start -> load -> repeat, with no intervening
player actions causes geometric growth of <player name>.sav
and the resulting monster array size.
Streamline special mutagen type handling by routing them theough a single iuse function.
Description tweak.
Merge Misc aMendments.
Merge remote-tracking branch 'upstream/master'
Merge branch 'master' into no-plantbeasts
Add some consistency to JSON syntax of new mutagen types.
Merge PR #1488 - AtomicDryad's new UI menu
Merge PR #1504 - mutagen refactor
Merge remote-tracking branch 'upstream/master'