Force roles and some work on refactoring PI

Now users can choose roles they definitely want some player to have.
This is especially useful for testing out roles with other roles (so
players will have them)
Implemented PI, still needs doppelganger support

Paranormal Investigator now works correctly, however doppelganger
appears to be bugged. Also needs work to check if doppelganger-pi is
viewed as doppelganger
Doppelganger and singlesearch; needs final testing

Doppelganger now uses doppelganger_look[:dgrole] to store the role for
paranormal investigator; single_search uncommented out as well.

These changes need final testing to ensure they work correctly (but seem
to so far)
Assorted testingfixes and seer fix/refactoring

action_take for seer changed to return roles/players (instead of
strings) to be consistent with other action_take; other code updated as
a result

map replaced with collect in a few places

Moved PI in night order (reveal) and added completenightorder
Log messages removed -- production version

Now additional log messages used for testing will not show during the
game.