Introduce '_current_module' and '_parent_module' variables

Add two built-in variables that provide access to the names
of the current and the previously instantiated modules.

Having these variables simplifies generation of BOMs and assembly
graphs (e.g. with GraphViz).

[std::stack]
Enable module stack introspection from within an SCAD script

The _current_module and _parent_module variables have been replaced
by a built-in function parent_module(n). It takes one numeric parameter n,
and returns n-th element from the module stack. If no argument provided,
n defaults to 1 and the function returns the name of the direct parent
module. If n is equal 0 current module name is returned.
add children primitive, and refactor control.cc a little
add children primitive, and refactor control.cc a little
Merge branch 'children' of https://github.com/vicnet/openscad into children
Merge branch 'bom-tree-std-stack' of git://github.com/steelman/openscad into steelman-bom-tree-std-stack

Conflicts:
	src/module.cc
Merge branch 'master' into steelman-bom-tree-std-stack
add children primitive, and refactor control.cc a little
use explicit Value::RangeType for clarity
allow one number parameter on children(): select this child only
add vector parameter to children()
factorize Value::RangeType method
remove compliation warnings
add range on children()
factorize Value::RangeType calculation and correct error
merge from origin
Bugfix related to #480: some tests had the test file specified twice
Set OPENSCADPATH in order for tests to find MCAD
Mac needs to know if we're a GUI app in order to find bundled libraries, Use Qt to find application path if available
Merge branch 'master' of ../openscad into steelman-bom-tree-std-stack