Sync latest DEV_TOOLS

Updating DEV_TOOLS with new commands class which will be used to build
out the cgv application
Add NodeApp

Add a new class, NodeApp, handles node navigation etc and outputs to a
terminal interface.
Can now create a command file object from a string

To facilitate simpler testing of the user application the command script
object can now be initialised from a script string rather than a file
path
Sync DEV_TOOLS

Bug fixes to commands and tokens required by NodeApp
Add user application interface class

Add a wrapper class around NodeApp to manage a user session and handle
configuration scripts
Sync DEV_TOOLS

Bug fixes and enhancements to Commands, Screen and OS required by the
cgv binary
Add Commands including Flat, Tree and Search

Enhance the node application objects with the ability to display useful
information about the call graph
Add cgv binary

A new binary, to replace the old profile binary, takes a more
configurable approach to navigating the callgraph.

Using the same core data structures as profile the new Commands library
has been levaraged to allow users to configure their owns commands. This
simplifies the application code and reduces the number of utility
functions that must be defined in the binary .
Merge branch 'master' of github.com:Grauniad/Profiler