Add PE timers, clean up PE descriptions and files.

Expanded the EffectDesc() function in persench.kod to append the time remaining for each buff to the icon description. Changed all PEs to propagate so this timer is added after any text added by those files. Detect evil and detect good are modified in a separate pull due to possible conflicts (both pulls are mine).

I've also cleaned up all the files in the persench class (except touch attacks due to other pulls). I'm not too sure as to whether I should do this to room enchants, as there may be strategic value for the person who cast the spell in others not knowing the time remaining.

Note: anonymity, illusionary form and morph don't work yet; they are in Spell not PersonalEnchantments.