Added the project's source to the PYTHONPATH
added __pycache__ to git ignore file
Removed 'self' reference I incorrectly added.

This method is used as comparison function.
Marked as @NoSelf to stop PyDev reporting this as an error.
Pickle file now need to be opened in binary mode
Replaced deprecated wxPython items
Calls to map() and Filter() now return an iterator instead of a list.
This caused a GPF when adding the 'links' variable   (not a list) to the
other variables.
Replaced deprecated wxPython items
Replaced deprecated or missing Python items
Fix missed wx.SystemSettings_GetColour references
Marked all variables that PyDev is warning as UnusedVariable or as
ReservedAssignment.
NOTE: Some of the warnings are incorrect
Built-in sorted method now expects the key function to have only a
single argument.
Used functools.cmp_to_key() to fix this issue.
Changed to call sortedWidgets method once
Merge branch 'optimise_proof' into twine_python3
Changed to python 3
Wrap call to dict.keys method.
The dict.keys method now returns a view object instead of a list, the
view does not have a sort method.
Changed usage of map, .keys and range methods as suggested by 2to3
Python 3 does not support string exceptions.
StringIO and cStringIO modules no longer exist
Migrate rebuild and autoBuildTick methods:
a. Class dict no longer has either a 'has_key' or a 'iteritems' method.
b. Have to open file in binary mode to store utf-8 encoded data.
Enable 'Auto Build' menu only if there is a build destination.