Added debug flag: LogThreadPool. It makes us log every use of the main threadpool.

Resolves http://opensimulator.org/mantis/view.php?id=6945
Automatically start logging FireAndForget activity if the threadpool is full

Resolves http://opensimulator.org/mantis/view.php?id=6945
Refactored DebugFlagsEnum

Resolves http://opensimulator.org/mantis/view.php?id=6945
LogThreadPool: when the thread is for ProcessPacketMethod, also log the packet type

Resolves http://opensimulator.org/mantis/view.php?id=6945
Added a watchdog to abort slow threads in the main thread pool

If a task in the thread pool hangs then it will permanently take up
one of the threads. If this happens repeatedly then the thread pool will
become exhausted and OpenSim will fail. This watchdog terminates threads in the
thread pool that have been executing for over a minute (which probably
means they're hung).

Resolves http://opensimulator.org/mantis/view.php?id=6945
Changed LogThreadPool to have 4 logging levels. Added console command "debug threadpool level" to set the logging level.

Resolves http://opensimulator.org/mantis/view.php?id=6945
Run slow operations in a separate thread, instead of using FireAndForget (which has a 1-minute timeout)

Resolves http://opensimulator.org/mantis/view.php?id=6945