Let player ghosts retain more spells.

Since they have the spell slots to do so now.

Each spell has a ((50 - fail) / 50)^2 percent chance of being retained
in the ghost's memory, where fail is the spell failure chance, so long
as the spell is castable as a monster spell.

Also fixes a display issue with player ghost spell lists in xv.
Pick servitor spells like ghost spells.

...that is, use the entire list of servitor-approved spells and weight
them based on spell failure rate using the same (50 - fail / 50)^2
formula.
Convert panlord spell selection to new spell slot system.

Notably, they can occasionally get more spells than previously possible,
but the net result here should be largely the same as before.
Axe a header reference to a now-nonexistent function.
Clean up and generalise some servitor code; it's now monster-castable.

Inspired to do this both on account of some ##crawl-dev discussion and a
subtle bug related to initialising spectral/dancing weapons.
Unbrace