Add SF patch #342 fix some director classes crashing on object deletion when using -builtin.

Fixes SF bug #1301 and python test cases director_basic and
director_classic seg faulting when used with -builtin.

Patch from Christian Delbaere.
Fix a const_cast in generated code that was generating a <:: digraph when using the unary scope operator (::) (global scope) in a template type.

Affects Python, Ruby, Ocaml.

Based on SF patch #341.
Uninitialized variable fix in SWIG_Python_NonDynamicSetAttr when using -builtin.

SF patch #340
Go examples and test-suite format fixes

Patch has the results of find . -name *.go -exec gofmt -w {} \;

SF Patch #339.
Fix comment typo (interpeters)
Fix comment typo
SWIG_AsWCharPtrAndSize improper operation if cptr NULL

SF bug #1327

This doesn't have any noticeable effect with the usage of
SWIG_AsWCharPtrAndSize as shipped by SWIG, but could be a problem if a
user is using this function with cptr equal to zero and psize is non-zero
 - the length would be incorrectly set due to the call to PyUnicode_GetSize
failing.
Improve testing of %pythonprepend and %pythonappend
Correct dates in recent commits to CHANGES file
Add %pythonbegin directive.

For adding code at the beginning of the generated .py file.
change to allow file SEXP return values
add regression tests for SEXP return values
Octave: more robust configuration

- do not rely on --eval argument to find mkoctfile, instead assume it
  is in the same directory as octave itself (which it always should be)
- check Octave options to make sure they are supported, including
  --no-window-system to prevent warnings if building without an X server
- disable Octave if any vital tests fail
Octave: fixups to previous configuration patch

- remove unneeded test -n "$OCTAVE"
- do not rely on Octave returning non-zero status for unrecognised option;
  search first line of output for 'unrecognized' instead
Correction for detecting invalid Octave options
Copied std::pair<> fragment from Lib/std/std_map.i into Lib/std/std_multimap.i. This fixes an error when a std::multimap template is wrapped by itself.
Merge remote-tracking branch 'upstream/master'
Fix for missing C++ code in std::multimap wrappers.

%template for a std::multimap generated uncompilable code unless a
%template for a std::map of the same template types was also coded up.

This patch is needed in conjunction with previous commit - 5f1fff1849285f46cfaffadff0352cf976ea4c52

Closes #64
Closes #65
Travis builds - add in apt-get update

php tests were failing. Travis suggest running this before any install - http://about.travis-ci.org/docs/user/build-configuration/#Installing-Packages-Using-apt
Remove SwigPyObject_print and SwigPyObject_str, and make the generated wrapper use the default python implementations, which will fall back to repr (for -builtin option).

Advantages:
- it avoids the swig user having to jump through hoops to get print to
  work as expected when redefining repr/str slots.
- typing the name of a variable on the python prompt now prints the
  result of a (possibly redefined) repr, without the swig user having to
do any extra work.
- when redefining repr, the swig user doesn't necessarily have to
  redefine str as it will call the redefined repr
- the behaviour is exactly the same as without the -builtin option while
  requiring no extra work by the user (aside from adding the
%feature("python:slot...) statements of course)
- the patch simplifies pyrun.swg a tiny bit.

Disadvantage:
- default str() will give different (but clearer?) output on swigged
  classes compared to unpatched swig

SF Bug #326