RF: move script running code into own module

Refactor code to run scripts into own module.  In fact I'm using a
version I refactored for another project, to make it easier to use
across projects, but I think this makes the code easier to read and
support.
BF: workaround missing __package__ in Python 3.2

Python 3.2 does not set __package__; work around for now.
RF: change "below" to "above" for higher directory

I tend to think of directories nearer root as being 'down', it looks
more common to think of this as being 'up', change according to Ariel's
suggestion.
Merge pull request #418 from matthew-brett/use-scriptrunner

RF: move script running code into own module