Added all the different node types required

This establishes the basic structure, and adds some basic testing of the
nodes but does not yet render anything useful.

Change-Id: I68a85483fe8e05b78817c258c0e45d9cfa08f5de
Got basic sphere rendering working

This pulls out some of the sphere rendering logic from the scene and
renderer to the specialized sphere node.

Change-Id: I8af73c1c16566113c9004dc2d9ebce9276a37e20
Moved grouping from Node to GroupNode

This design is cleaner, and removes some ambiguity from other derived
classes. Made the necessary changes to other classes to get them working
after this change in behavior.

Change-Id: I2d9a9fd16e2ff76883aa1309df87e11fe4106147
Another change to the API, making geometry nodes

The majority of the rendering is done by the objects derived from
Drawable in the GeometryNode objects.

Change-Id: Ieaef9135e9972d40862944a87d15c188cc0fda38
Got triangle mesh rendering to work again

Added ability to set color/opacity as uniforms, decreased the overall
shininess of materials (lighting still needs improvement) and made the
quantum output plugin calculate the negative and positive parts of the
molecular orbitals.

Change-Id: I147ec19222c6f7b3f34656ff8060705f5276de71
Rename the rendering geometry classes

They are no longer node derived classes, renaming with a geometry suffix
to denote that they are primarily concerned with storing/rendering
geometry.

Change-Id: I3f4eaa465c2106711acf95b2ded916e48fabf8ec
Merge remote-tracking branch 'origin/master' into rendering-scene-graph

Conflicts:
	avogadro/qtplugins/CMakeLists.txt

Change-Id: I955d25b7cef4dd9dd6f113d5ba78fdf5b1879546
Migrated the picking code to the geometry node

This moves cylinder and sphere specific picking code to the sphere and
node geometry classes, and passes through hit calls to the appropriate
objects.

Change-Id: Ie92de680279ce604a175627778e7ff97cd3973cf
Addressed points raised in code review

Largely style, a couple of leaks in tests and attribute mismatch.

Change-Id: I17246bb5cbd5d788a30077947c3b4af27f5654ae
Merge topic 'rendering-scene-graph' into master

54939476 Addressed points raised in code review
075ba701 Migrated the picking code to the geometry node
e3a9fd50 Merge remote-tracking branch 'origin/master' into rendering-scene-graph
b902fe62 Rename the rendering geometry classes
d07ba827 Got triangle mesh rendering to work again
092083df Another change to the API, making geometry nodes
98888452 Moved grouping from Node to GroupNode
3b42a193 Got basic sphere rendering working
ec4a553a Added all the different node types required