User Interface: Ctrl+C over a menu copies the py command

also use bools rather then ints
Blender Internal: Fix for rendered view crash that happens when changing screen or area type

This crash is very similar to T36936.  If changing screen or area type
buried the rendered view, popping up it again may cause the crash by
corrupted render database.
Fix T37703: Shadow pass output image is mangled.

Was a mistake in own optimization commit.
Fix T37688: User Preferences do not load correctly

Issue was caused by from_memory=true passing to wm_homefile_read
in case there's a configuration folder for current blender.

But the thing is, we still might fallback to reading home file
from memory (i.e. in cases there's no startup.blend in config
folder).

In this case we still need to run versioning code for userprefs.
Fix T37698: Crash from invalid context access when freeing custom
python nodes on Blender exit.

The nodeFreeNode function is calling a customizable freefunc callback,
which can be implemented by python. However, the context is invalid when
using this callback while the node tree data block is freed on exit.
Luckily it is also not necessary: When freeing the bNodeTree data blocks
all that is needed is freeing of the DNA data, no other side effects
should happen. So now disable the api callbacks when freeing nodes in
the ntreeFreeTree function.

Also some minor cleanup: checking node->typeinfo is not necessary, all
nodes will always have a valid typeinfo pointer - if a node type is
unknown this will be a stub bNodeType to avoid the need for such checks.
Fix for own error in recent tessellation update.