Fix a few bugs in tools.py

There were several cases where terminal() was called, but now that those
functions have been moved to be methods of the Tools class,
self.terminal() should be called instead.
Removing unneeded example files
Add Andrew Moffat's sh.py library (MIT license)

We'll be using sh.py as a replacement for the subprocess module in the
standard library. Rather than mess around with asking the end users of
Rapuma to install it on their systems, since sh.py is a one-file library,
we'll just install it alongside the Rapuma libraries.
Add Andrew Moffat's sh.py library (MIT license)

We'll be using sh.py as a replacement for the subprocess module in the
standard library. Rather than mess around with asking the end users of
Rapuma to install it on their systems, since sh.py is a one-file library,
we'll just install it alongside the Rapuma libraries.
Change versioning to work with the Git repository system
Added some data flow documentation
Add a .gitignore file to ignore Python detritus

This is the default .gitignore file that Github automatically creates
for you when you create a Python project. It's sufficient for 90% of
Python projects, and makes a good starting point for the other 10% of
projects that might need to ignore some extra files.
Remove version updating from make_ui to update_version
Various bugfixes

This commit fixes all the places where the PyDev plugin for Eclipse
could find mistakes, e.g. "undefined variable" errors. Usually they were
the cause of previous refactoring: such-and-such a function had been
renamed, or moved into class XYZ, but one or two cases of calling that
function hadn't been updated. Those should be fixed now.
A few typo and whitespaces fixes
Improve loop by using enumerate()

This is the kind of situation enumerate() was written for; let's use it.
Merge branch 'master' into personal/rmunn
Ensure rapuma can run from anywhere

When rapuma is started as "scripts/rapuma" from the top folder of the
Git repo, the logic for finding rapumaBase fails, because it's expecting
two directory parts in sys.argv[0] and only finding one. Changing the
logic to instead use os.path.join(dir, '..') instead of the second
dirname() call will work even in the "scripts/rapuma" case.
Remove proj_maps and proj_toc modules
Removed refs to toc and map mods (amended#2)
Don't put lib in .gitignore
Don't put lib in .gitignore
Working on moving out project data from sys config (check point)
Fix a few bugs in tools.py

There were several cases where terminal() was called, but now that those
functions have been moved to be methods of the Tools class,
self.terminal() should be called instead.
Various bugfixes

This commit fixes all the places where the PyDev plugin for Eclipse
could find mistakes, e.g. "undefined variable" errors. Usually they were
the cause of previous refactoring: such-and-such a function had been
renamed, or moved into class XYZ, but one or two cases of calling that
function hadn't been updated. Those should be fixed now.