exposes application to any subsequent script run in this process

by declaring the d{} variable this can then be queried by the cmds executed post gaffer launch
now limits variables exposed to cmd to only contents of d
Merge pull request #433 from bentoogood/screenGrabApp

exposes application to any subsequent 'cmd' run in this process
Added support for empty and relative paths in Gaffer.Path.

- Added root parameter to all path constructors. This is used to define the root when the path parameter is passed a list of items. Because python doesn't allow overloaded functions this is slightly awkward - see documentation of Path.__init__ for discussion of how this would break down into overloaded constructors when we move the implementation to C++.
- Added Path.root() and Path.isEmpty() methods.
- Added Path.setFromPath() method, which copies the elements and the root from another path. This should be used in place of code which formerly did path[:] = otherPath[:].

Note that the new root parameter changes the parameter order for all Path (and derived class) constructors - if you were formerly passing a filter as a non-keyword argument you should now pass it as a keyword argument to avoid problems. Additionally, if you implemented a custom Path subclass, you need to add the root parameter to your constructor and update your copy() and children() implementations. The DictPath changes provide a minimal example of what needs changing.

Fixes #432.
Fixes #324.
Merge pull request #436 from johnhaddon/relativePaths

Added support for empty and relative paths in Gaffer.Path.