update steps for eclipse setup and building project
Fixed what I'm pretty sure is a typo.  I didn't test it
but I can see no reason to clear the refresh flag on these
methods but setting it seems entirely logical.
Switch from gradle 1.12 to 2.2.1
Merge pull request #194 from tejbirwason/master

Added steps for proper Eclipse setup and steps to build project with Gradle
Optimize updateGeometricState to not recurse all children when not necessary

Conflicts:
	jme3-core/src/main/java/com/jme3/scene/Node.java
clear RF_CHILD_LIGHTLIST even when there are no children
Merge branch 'updateGeometricStateOptimization' of https://github.com/Bebul/jmonkeyengine
Minor cleanup for previous merge
Mark "jme3-android-native" as a native project
Fix crash in tests that use the tree model
 - Since UseAlpha material parameter was removed from lighting
Make sure Mesh.isAnimated() works for hardware skinning
Deprecate WrapMode.BorderClamp since it is deprecated in OGL3+
GLAutoGen updates
 * Remove caps generation since it is no longer used by LWJGL renderer
 * Generate a separate interface GLExt for features only available in extensions to more easily detect their usage
 * Fix some extension references
Update renderer capabilities
 * Add capabilities not normally supported by GLES2 for unified renderer
 * Remove ARBProgram since it isn't used by jME3
Make Renderer.initialize() a standard method since everyone already uses it anyway
Introduce the unified renderer architecture for the OpenGL renderer
 * Similar to the OpenAL URA, OpenGL calls are now made to an interface
   which is implemented by the backends
 * Major cleanups in the texture util code to handle GLES2 texture formats
 * Split the GL interface into several interfaces depending on API and version:
   - GL (common denominator for all GL APIs)
   - GL2 (desktop GL2)
   - GL3 (desktop GL3)
   - GLFbo (framebuffer object functions)
   - GLExt (desktop GL and OpenGL ES extensions)
 * Added GLTracer class which traces OpenGL calls made by the engine when activated
Implement the new GL interface for the LWJGL backend
Use unified renderer architecture for LWJGL by default (other backends pending)
Significantly changed the way updateLogicalState
works internally to avoid full-scene graph traversals
once per frame.
Random unrelated things first:

Spatial constructors were modified to be protected since it
is an abstract class and it's good practice.  I also flipped
them to be this(default values) instead of this() to delegate
constructors.

Geometry and Node constructors were modified in similar ways
to at least call the this(name) version of the constructor
everywhere.

removeControl(Class) was modified to do what it's javadoc
says and only remove the first encountered control.  Prior
to this change, it was removing all matching controls.

The meaty stuff:
Node.updateLogicalState() no longer traverses all children
and never traverses any children at all unless it is the root.
If it is the root node, it keeps a list of all Spatials that
require updates and only iterates that list.

Spatial was modified to have a package-private requiresUpdates()
method that returns true if the requiresUpdates flag is set
or the Spatial has controls.

The requiresUpdates flag can be set by subclasses that require
updateLogicalState() to be called even if they have no controls.
(BitmapText is such an example.)  By default, subclasses will
_always_ have this flag set to true, ie: default to the OLD behavior
and avoid silently breaking.

Subclasses that wish to have the new-hotness optimal behavior
must call setRequiresUpdates(false) in their constructors.
They can opt in to better performance rather than silently
breaking with an upgrade.

The only negative side effect of this change (other than
slightly increased complexity) is that for large scene
graphs with lots and lots of controls or children requiring
updates, a large list of spatials will be kept in the root
node.  This will never exceed "number of spatials in the
scene graph" and so already had a fairly small upper bound
with the old code due to performance.

I think I've captured all of the edge cases... but we'll
see. :)

Stress test example to follow.
Added a large scene stress test.  Defaults to:
Total nodes:4681  Total Geometry:32768  Total controls:314

...the split depth can be increased for even more ridiculous
scenes.