Miscellaneous bug fixes

Make the UPS bionic a passive bionic just like the item. Note that a carried UPS item will be used first, so player can  "decide" which one to use: carry an UPS item and it will be used, or carry no UPS item and the bionic will be used.

----

Fix a stupid bug: `game::get_abs_levz()` should return lev **z**, not x.

---

Fixes #9967:

This it what happens: `stat2H` is written at two places (wide sidebar), line 442 store the value 1 and line 477 stores `TERMY - stat2Y` which turns out to be `TERMY - TERMY + 4 + 1 - 5` which is 0.

The -4 comes from `newwin` in cursesport.cpp, it handles the case `nlines==0` special and uses `TERMY - begin_y` instead, which turns out to be negative.

This is handled by assuring that `stat2H` is always at least 1.

Adds another fix for a display glitch (wide sidebar): the HP window must be one line taller, the location window is under the message window, but is only as wide as the message window and does not occupy the area under the hp window:
```
HP MESSAGES
HP MESSAGES
HP MESSAGES
.. LOCATION
STATUS-----
```
The `..` is not occupied by an window and subsequently not redrawn. This is most obvious when switching the sidebar style (narrow->wide) while playing, the previous terrain there is still visible in the sidebar area.