Partial NAO-ization of dnethack

During the merge between NAO-nethack and dnethack, some elements from NAO were moved back into dnethack. This is a catch-all commit.
Continued implementation of Binder role

1) All binding conditions have been completed, meaning all spirits can be bound for testing purposes.
1b) Most spirits still need flavor text and special effects.

2) Spirits now unlock the skills they are suposed to.
2a) When binding a spirit, its associated skills are unrestricted.
2b) While bound to a spirit, its associated skills are given a +1 skill level bonus, and can be advanced up to expert.
2c) Skills use the lower of their current skill level and their current maximum skill level. So if you level up a skill, you will have to keep an associated spirit bound.