Improve error handling in LSM merge finalizing.
Panic in LSM if a merge or switch fails at the wrong time.

The wrong time is once changes have been made to the LSM tree structure
in the merge case, or any time during a switch.
Fix error handling in metadata cursor. [#1094]
Fix error handling in statistics log configuration. [#1095]
Normalize the panic macros to match WT_ERR / WT_RET semantics, use them consistently.
Panic if we fail to unlock an LSM tree: something has gone badly wrong.
Revert change to not evict in the server thread if application threads wait.

It makes a read-heavy multi-threaded workload slower.
Merge pull request #1097 from wiredtiger/lsm-merge-error

Improve error handling in LSM merge finalizing.
Merge pull request #1099 from wiredtiger/evict-in-server

Revert change to not evict in the server thread if application threads wait
whitespace
dead assignment, read_pressure never read.
dead assignments ('uri' never read, 'session' never read)
minor return cleanup.
dead assignment ("typestr" always reset)
dead assignment ("reserve" never read before being reset).
dead assignment ("fd" never read before being subsequently set)
Don't cast the return from calloc, it's not necessary.
Don't drop core if table_count < 1; database_count < 1 makes no sense,
check it as well.
If the configuration sanity check fails, we're done, don't keep trying.
Dueling static analyzers: clang's scan-build thinks it's a dead read if
typestr is set outside the switch as well as inside the switch, gcc 4.1
warnings and FlexeLint think that typestr might not be used if it's not
set outside the switch statement.  Set one case outside of the switch,
and just break on that value inside the switch.
Fix error handling in LSM truncate implementation.

References #1100