Fix Bug 862: Fix GL Version Validation / NVidia GTX550 driver 331.13 - 64bit Linux - No compatibility GLProfile (GL2, >= GL3bc)

Fix GL Version Validation:
  We shall not rely on our known good versions when validating a queried GL context version,
  but allow some 'room' for a higher version post JOGL release while still
  cutting off 'odd versions'.

  While GL version detection, we always iterate from the highest known version
  down to the lowest. Hence 'GLContext.isValidGLVersion(..)' is satisfied
  by validating the lowest version number but allowing a higher than known one.

  Now we would return 'invalid' for a version >= 6.

  It is enough to clip to the maximum known version when iterating,
  allowing the highest unknown version to be available.

  GLContext.isValidGLVersion(..):
    Returns true, if the major.minor is not inferior to the lowest
    valid version and does not exceed the highest known major number by more than one.

    The minor version number is ignored by the upper limit validation
    and the major version number may exceed by one.

    The upper limit check is relaxed since we don't want to cut-off
    unforseen new GL version since the release of JOGL.

    Hence it is important to iterate through GL version from the upper limit
    and 'decrementGLVersion(..)' until invalid.

Add GL Version 4.4 to valid known versions.

Remove ES3 desktop detection, which is impossible
  Regression of commit 3a0d7703da32e9a5ddf08a334f18588a78038d88 (ES3 support)
Fix Bug 827 - ShaderProgam helper class reports errors incorrectly
PinchToZoomGesture: Add ctor arg 'allowMorePointer', should be false to be more stable (i.e. only 2 pointer pressed)
jogl: replce more unneeded String() construction

Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
jogl: remove clone() method that only throws Exceptions

commit:
a4e3f241cfba55e407c68eba91ffcc4beb0758b5 (Analysis of glXMakeCurrent freeze on ATI fglrx 8.78.6; Misc ..)

Removed 'implements Clonable' from NamedDisplay, which means Object.clone() will
always throw CloneNotSupportedException. Kill clone().

Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
jogl: remove clone() version that can only ever fail

commit:
d75835796900cac602f7e5789601ffba0a27efe2 (Graph: More std. functionality (equals, clone) / Better in-place transformation (cubic -> quadratic))

Added a clone method, but did not implement Cloneable, meaning Object.clone() will
always throw CloneNotSupportedException.  This method never returns anythng but null.

Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
jogl: enable generics annotations on TextRenderer

These were already here, enable them.

Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
jogl: adapt code generator to output @Override annotations in various places

This adds the @Override to methods in the GL implementations (debug, trace, etc) for methods
implementing a GL Profile.  It also adds @Override for the toString() method.

Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
jogl: use .format() to build the method signature when generating pipeline code

Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
jogl: change code generation for Debug pipelines to avoid building large strings

- split the check for a GL error from the output of the error string
- only build the caller String when there is an error to report
- wrap String building in an if() block rather than using an early return as we
don't know the return type in the postDownstreamCallHook

Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
jogl: do not generate an extra String for the Debug pipeline wrappers

Build the caller string directly and don't wrap it in an extra constructor.

Update the indentation level for the newly added if-block from the previous commit.

Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>