Major refactoring of evaluation order enforcing

* No more using pre-processor and changes in argument order, as these
  are not working for all compilers and platforms. Instead use sequence
  operator as necessary or multiple statements where possible.

* Changes to exception raising. Do not attempt to avoid temporary
  references. This was only causing code complexity, and likely more
  leaks than worth the effort.

* Annotations were potentially using function context for their value
  creation, which was only working for global variable usages, but
  not likely beyond much else. They are now calculated on the outside
  if not constant.

* Added many tests for evaluation order that were not previously there.
Fix, need to allow spaces in library module paths.
Minor changelog refinements
New pre-release
Cleanup, removed tracking of needed tuple, list, and dict helpers from context.

* These are global things, and do not need to be attached to the
  context objects.

* Moved code creation for these helper functions to the module
  named after it too.

* So now that is merely global state of these modules.
Added missing dependency for PyQt4.QtGui, fixes Issue#90
Windows: Ignore standard library path directory difference.

* The Nuitka path is the normalized one, original Python does not
  do that.

* Considered irrelevant difference for now.
Ignore ".obj" files as created by MSVC compiler too.
Also disable warning that MSVC newer version gives for its own system header.
Avoid super long identifiers for tuples and lists.

* These were causing limit overflows for MSVC compiler

* Not good for readability anyway.
Determine int/long(base=x) behaviour by doing it, instead of by versions.

* It must be expected that more backports may show up and checks on
  these versions are rather hard to write and read.

* This is much clearer to understand.
Cleanup, don't use context to store "contained" constants.

* This is in preparation to moving out constant code management to
  globals in "ConstantCodes".

* Also avoid calling "context.getConstantHandle", instead use the
  one from "ConstantCodes" made available in "Generator" module.
Avoid super long identifiers for int and long as well.

* These were causing limit overflows for MSVC compiler

* Not good for readability anyway.

* For "int" it's only happening with Python3 of course.
Don't create C++ strings larger than MSVC compiler limits.
Fix, was only avoiding "a" * 300, but not 300 * "a"

* This resulted in very large constants from pre-computation of
  these strings.

* Now these calculations are both done at run time.
Python3: Fix, bytes are iterable as well.
Fix, "COMPILE_CODE" was leaking a reference to source code strings.
Python3.3: Fix "ord" built-in, need to use new unicode API.
Refactored "eval", "exec", and "execfile" handling

* Moved the default and "None" value handling to the node tree, so it
  becomes visible to optimization.

* Keeper variables may now have multiple references.

* Moved "exec" handling to re-formulation module.

* Added tests to cover "eval" reference count correctness.
Improved white list of non-found modules that are built-in to Python

* Using "sys.builtin_module_names" of all supported versions gave lots
  of suggestions.

* Added TODO that aims at keeping this state intact.