Take time for every gameplay server command

This ensure that server commands sent by AI take time and so AI does not loop.
Debug server commands that waste client time
Debug travis build segfault via 'cabal -v3'
Ensure with types that AI sends server commands that take time
Ensure with types that server commands received from AI don't take time
Don't let AI switch leader to an incapacitated actor
Improve failure messages for server commands
Enumerate all possible server failure messages
Start making client commands similar to server commands
Rewrite movement commands with clearer semantics
Make server forbid aiming when in melee

So far only the client forbade that.
Also, refactor code and make it more similar on server and client.
Complete the client-side split up of Alter and Trigger
Eliminate hack 47
Eliminate a few tile features about triggering effects
Eliminate a few tile features about altering tiles
Add a neutral tile-altering feature
Do not let client close door by bumping into them

(when not accessible, that is, e.g., diagonally in LambdaHack).
The client can still close the door via an explicit close command,
so the server does not check nor forbid this.